« 1 2 »
Autor Zpráva
Alastor_Kopal
Profil
nevim proč ale mám urostřed kódu toto (nedivím se tomu že mám uprostřed kódu toto :-) )

	$stejnapozice=mysql_query("select * from dobro where misto='5' AND radek='$vysledekr' AND sloupec='$vysledeks'");
	$stejnapozice=mysql_num_rows($stejnapozice) or die (mysql_error());

	$pozicelidi=mysql_query("select * from dobro where misto=5 AND ban=0");


$vysledeks a $vysledekr jsou pozice x y které zapisuji do databáze ty dva horní řádky chci použít jako dotaz na databázi jestli náhodou na tom místě už někdo nestojí a dyštak zobrazit informace o tom kdo tam stojí

ten poslední - třetí řádek je zobrazení všech uživatelů jenomže když těm dvoum proměnným ($stejnapozice,$stejnapozice) přiřadím hodnoty tak se mi nezobrazí uživatelé (to znamená že 3. dotaz se nevykoná)

snad to někdo pochopí

nechápu proč by mělo přiřazování proměným (které ani nepoužívám v kódu) ovlivňovat výstup
stepanka
Profil *
Alastor_Kopal

jenomže když těm dvoum proměnným ($stejnapozice,$stejnapozice) přiřadím hodnoty tak
To nejsou dvě proměnné, ale jedna. Nemůžeš mít jeden název proměnné a používat ho pro dvě hodnoty. Jednu pozměň.
Mike8748
Profil
Alastor_Kopal
kdyz naleju benzin do nadrze, tak mi nejede auto. nevite proc?........


tezko rict kdyz nenapises relevantni udaje.
jake zobrazovani? jakym kodem? nepocitas potom nahodou s tim ze $stejnapozice bude obsahovat vysledek prvniho sql dotazu ?
Alastor_Kopal
Profil
	$stejnapozice=mysql_query("select * from dobro where misto='5' AND radek='$vysledekr' AND sloupec='$vysledeks'");
	$stejnapozice_radky=mysql_num_rows($stejnapozice) or die (mysql_error());

	$pozicelidi=mysql_query("select * from dobro where misto=5 AND ban=0");


nevim proč kopíroval jsem to s kódu a tam je to správně samozdřejmě že to vím omlouvám se
Alastor_Kopal
Profil
relevantni udaje.
které ?

nepocitas potom nahodou s tim ze $stejnapozice bude obsahovat vysledek prvniho sql dotazu ?
??? vždyť $stejnapozice je prvni SQL dotaz
stepanka
Profil *
Alastor_Kopal
Taky si zkus dát výpis chyby i za poslední dotaz. Pak možná zjistíš, proč se neprovedl.
Alastor_Kopal
Profil
přidal jsem tam
	$pozicelidi=mysql_query("select * from dobro where misto=5 AND ban=0") or die (mysql_error());
stepanka
Profil *
Alastor_Kopal
přidal jsem tam
Fajn. No a výsledek?
Alastor_Kopal
Profil
právěže nic žádný text žádný chyba
stepanka
Profil *
Alastor_Kopal
Taky máš v jednom dotazu

select * from dobro where misto='5'


a v druhém

select * from dobro where misto=5


To se nějak nemůžeš rozhodnout, kterého typu ten sloupec je, nebo co to znamená?
Alastor_Kopal
Profil
promiň já vůl zapoměl jsem na vlastnosti úvozovek int nebo text
Alastor_Kopal
Profil
výborně opravil jsem to naskočilo

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in *soubor* on line 361
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND sloupec=' at line 1


řádek 361
	$stejnapozice_radky=mysql_num_rows($stejnapozice) or die (mysql_error());


tak teď jsem z toho vážně na větvi
stepanka
Profil *
Alastor_Kopal
361 není řádek s chybou, ale řádek, kde se chyba rozpoznala. Chyba je v dotazu na řádku 360. Projdi si ho, máš tam dva sloupce, u kterých taky používáš uvozovky. Mají tam opravdu být? Nejsou to zase sloupce číselného typu?
Alastor_Kopal
Profil
ano když jsem no to byl upozorněn v [#10] tak jsem opravil i 360

	$stejnapozice=mysql_query("select * from dobro where misto=5 AND radek=$vysledekr AND sloupec=$vysledeks");
Nox
Profil
Uvozovky tam klidně být můžou, mysql dost pohodově používá konverze... však si můžete zkusit
[presql]"select '5'+3+'2'"[/pre]

Alastor_Kopal
fakt by to chtělo víc infa
stepanka
Profil *
Alastor_Kopal
Víc už poradit neumím. Musíš zkusit hledat. Vypiš si obsahy proměnných před tím, než je vložíš do dotazu, zda opravdu obsahují to, co chceš. Podívej se do databáze, zda tam takové řádky opravdu jsou. Zkontroluj si, jestli Ti sedí názvy sloupců a jejichy datové typy. Za každým dotazem si vypisuj případné chybové hlášení. Snad uspěješ..
Alastor_Kopal
Profil
***
stepanka
Profil *
Nox
Aha, tak to se omlouvám, pokud to MySQL umí. Jsem zvyklá, že mi to vždycky házelo chybu. Možná to bylo ve 4kové verzi MySQL, těžko říct, nebudu to zkoumat.. Každopádně jsem nechtěla poradit špatně..
Alastor_Kopal
Profil
tak by to šlo ještě překombinovat ten dotaz

mám proměnné x y a zapisuji je do databáze. Jenže chtěl bych zkontrolovat zda někdo nemá tytéž hodnoty

takže asi takhle



když nikdo nemá stejné hodnoty tak

mysql_query("UPDATE dobro SET noha='$_SESSION[noha]', obrazek='$obrazek', sloupec='$vysledeks', radek='$vysledekr' where id='$id'");


a o kontrolu sem se pokoušel teď
tiso
Profil
Alastor_Kopal: ty sa sem chodíš vykecávať, alebo potrebuješ riešiť nejaký problém? Lebo z toho, čo si napísal, to vôbec nie je jasné. Skús sa lepšie vyjadrovať, aby tomu rozumel aj niekto iný okrem teba.
Alastor_Kopal
Profil
dobře takže

potřebuji dotaz který ze zeptá databáze jestli nějaký registrovaný uživatel má ve sloupci X a Y hodnoty které jsem vypočítal v php souboru

MySQL - přikladný uživatel
Jmeno - 123
Heslo - 321
X - 200
Y - 100

v php mi vyjde výsledek x(200) a y(100) a potřebuji dotaz který zjistí že opradu takový uživatel je a vypíše jeho jméno
Nox
Profil
potřebuji dotaz který ze zeptá databáze jestli nějaký registrovaný uživatel má ve sloupci X a Y hodnoty které jsem vypočítal v php souboru
$je_uzivatel = (bool)mysql_result( mysql_query("SELECT COUNT(*) FROM dobro WHERE sloupec=$vysledeks AND radek=$vysledekr"), 0);


mj. hráči za dobro a zlo mají odlišné sloupce? jinak myslím že není důvod dělat dvě odlišné tabulky, stačí přidat sloupec třeba "strana" ...a to buď jako cizí klíč nebo třeba enum
Alastor_Kopal
Profil
a jak se mám ptát v if a jak mám zobrazovat ? $je_uzivatel['jmeno'] například ?

EDIT: v ifu se mám ptát vlastně
if($je_uzivatel)
Alastor_Kopal
Profil
	$stejnapozice = (bool)mysql_result( mysql_query("SELECT COUNT(*) FROM dobro WHERE misto=5 AND sloupec=$vysledeks AND radek=$vysledekr"), 0);


to je divný
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in *soubor* on line 331

špatný argument takže asi chyba v příkazu
nightfish
Profil
Alastor_Kopal
špatný argument takže asi chyba v příkazu
přepokládám, že po nás chceš zopakovat, že chyba v dotazu se vypisuje pomocí echo mysql_error()...
Alastor_Kopal
Profil
pardon zapoměl jsem to připsat

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND radek=' at line 1

co se mu nelibí ? AND ?
nightfish
Profil
co se mu nelibí ? AND ?
to, co je, nebo spíš není před ANDem
vypiš si proměnnou $vysledeks a $vysledekr - tipuju, že alespoň jedna z nich je prázdná
Alastor_Kopal
Profil
ne blbě jsem to napsal edit dole \/
Alastor_Kopal
Profil
až teď jsem si uvědomil že to mám dělat takhlenc

	$stejnapozice = (bool)mysql_result( mysql_query("SELECT COUNT(*) FROM dobro WHERE misto=5 AND sloupec=$vysledeks AND radek=$vysledekr"), 0) or die (mysql_error());
if($stejnapozice){echo'zatim jakejkoliv text jen at vim jestli to funguje';}
else{
mysql_query("UPDATE dobro SET noha='$_SESSION[noha]', obrazek='$obrazek', sloupec='$vysledeks', radek='$vysledekr' where id='$id'"); $_SESSION['sloupec'] = $vysledeks; $_SESSION['radek'] = $vysledekr;}}


jedíná věc která na té věci nefunguje je if podmínka nevím jak ji mám otestovat
Nox
Profil
var_dump ... nesmírně pomůže při mnoha potížích
pak třeba taky vypsání query
echo "SELECT COUNT(*) FROM dobro WHERE misto=5 AND sloupec=$vysledeks AND radek=$vysledekr"

případně ozkoušení v phpMyAdminu pokud je to select
« 1 2 »

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: