Autor | Zpráva | ||
---|---|---|---|
Fanda Profil * |
#1 · Zasláno: 23. 12. 2006, 20:16:11
Ahoj lidi, začínám s Php a právě si lámu hlavu nad tím jak správně zapsat tenhle sql dotaz:
SELECT id_sezony FROM sezona WHERE rok='2001 AND kvartal='Podzim'; Přičemž ten rok s kvartálem mám jako proměnné $Rok a $Kvartal. Zkusil jsem napsat tenhle dotaz: $dotaz=mysql_query("SELECT id_sezony FROM sezona WHERE rok='$ROK' AND kvartal='$Kvartal' "); ...ale hází mi to chybu v syntaxi sql. Nevíte, jak bych to měl napsat správně??? |
||
DJ Miky Profil |
#2 · Zasláno: 23. 12. 2006, 20:20:55
A co přesně ti to hází za chybu? Na první pohled tam nic nevidím... Nemáš blbý obsah těch proměnných? Zkus si vypsat ten kompletní dotaz (tzn. i s dosazenými proměnnými).
|
||
Fanda Profil * |
#3 · Zasláno: 23. 12. 2006, 21:28:52
Proměnné jsou v pohodě. Konkrétně mi to píše tohle to:
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 'Resource id #3' at line 1 |
||
Alphard Profil |
#4 · Zasláno: 23. 12. 2006, 21:54:22
Přičemž ten rok s kvartálem mám jako proměnné $Rok a $Kvartal.
$dotaz=mysql_query("SELECT id_sezony FROM sezona WHERE rok='$ROK' AND kvartal='$Kvartal' "); PHP je case sensitive |
||
Fanda Profil * |
#5 · Zasláno: 23. 12. 2006, 23:15:50
Jojo to byla hloupá chyba,díky za upozornění, ale ani tahle oprava nic nevyřešila, pořád to píše stejnou chybu:(
Co může znamenat to Resource id #3 ? |
||
koudi Profil |
#6 · Zasláno: 23. 12. 2006, 23:23:48
Odkud bereš $Rok a $ Kvartal?
|
||
tark Profil |
#7 · Zasláno: 23. 12. 2006, 23:27:22
Hod sem promenne $Rok a $Kvartal...
|
||
nightfish Profil |
#8 · Zasláno: 23. 12. 2006, 23:40:34
Proměnné jsou v pohodě. Konkrétně mi to píše tohle to:
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 'Resource id #3' at line 1 to znamená, že ty proměnné v pohodě nejsou... jedna z nich obsahuje odkaz na "zdroj" (tzn. třeba to, co ti vrátí funkce mysql_query) místo toho, aby obsahovala patřičnou proměnnou kde bereš hodnoty těch proměnných? |
||
Fanda Profil * |
#9 · Zasláno: 24. 12. 2006, 00:17:16
Proměnné beru z formuláře, konkrétně:
<form action="ulozeni_skupiny.php" method="post"> <table> <tr> <td>Rok:</td> <td><input type="text" name="Rok" size="4" maxlength="4"/></td> <td>Sezóna:<select name="Kvartal" size="1"> <option value="Jaro">Jaro <option value="Podzim">Podzim </select></td> ....atd ještě tam mám několik položek před odesláním. a na stránce ulozeni_skupiny.php mám ještě před samotným dotazem tohle: $Rok = $_POST['Rok']; $Kvartal = $_POST['Kvartal']; ...když dám echo $Rok,$Kvartal; , tak se mi proměnné správně vypíšou, proto jsem psal, že nevypadají, že by byly špatné. |
||
tiso Profil |
#10 · Zasláno: 24. 12. 2006, 11:55:54
Fanda
v pôvodnom dotaze Ti za rokom chýba apostrof, a ešte by som doporučoval uzatvárať výrazy do zátvoriek: () AND () |
||
Fanda Profil * |
#11 · Zasláno: 24. 12. 2006, 14:50:36
Ten apostrof jsem zapomněl napsat jen sem. Jsem z toho jelen...
Jinak to teď vzdávám a udělám si jeden optgroup formulář, v něm splácám dohromady rok jako Label a kvartal jako podzim/zima a jako value budu mít hodnoty právě těch hledaných id_sezony. Jejich naštěstí jen 10. Stejně mě to štve, protože mám za to, že se jedná o fakt jednoduchej dotaz:( |
||
nightfish Profil |
#12 · Zasláno: 24. 12. 2006, 15:43:46
echo "SELECT id_sezony FROM sezona WHERE rok='$ROK' AND kvartal='$Kvartal' ";
co vypíše tohle? |
||
Fanda Profil * |
#13 · Zasláno: 26. 12. 2006, 12:09:14
Ahoj, tak jsem na to po delší odmlce snad kápnul. Nechal jsem si v phpmyadminu vyjet ten můj správný sql dotaz převedený do php, které jsem trochu intuitivně upravil a bylo to na světě. Použil jsem na to tedy už trochu jinej dotaz, ale svým způsobem podobný:
$dotaz = "SELECT id_zapasu FROM zapasy WHERE (kolo='$Kolo' AND id_sezony='$Sezona') AND (hoste OR domaci)='$Banana' LIMIT 0, 30"; Jinak všichni díky moc za pomoc. Tahle diskuse je výborné místo!!! |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0