Autor | Zpráva | ||
---|---|---|---|
3kolik Profil * |
#1 · Zasláno: 17. 4. 2011, 11:04:06
Zdravím, mám problém s podmínkou. Takhle vypadá kód:
<?php $brankar=mysql_query("select brankar from tymy where id=".(int)$_GET['tym'].); if ($brankar='Nikdo') echo "Funguje"; else {echo "Stále funguje"}; endif; ?> Jak jste asi pochopili tak chci, aby v případě, že se proměnná $brankar rovná slovu Nikdo, tak aby se mi napsalo funguje. Ale když to mám takhle napsané, tak mi to vypíše chybu: Parse error: syntax error, unexpected ')' in E:\blablabla...... on line 2 Zkoušel jsem i vypsat chybu pomocí mysql_error, ale neúspěšně Předem děkuji za pomoc. |
||
johnl Profil |
#2 · Zasláno: 17. 4. 2011, 11:06:37 · Upravil/a: johnl
<?php $brankar=mysql_query("select brankar from tymy where id=".(int)$_GET['tym']); if ($brankar=='Nikdo'){ echo "Funguje"; } else { echo "Stále funguje" }; ?> Přidal jsem k podmínce složené závorky.. |
||
panther Profil |
#3 · Zasláno: 17. 4. 2011, 11:07:27
3kolik:
před poslední závorkou máš tečku navíc. Ono při chybě, kdy je neočekávaná koncová závorka a ty závorky tam máš celkem dvě, se chyba hledá těžko, že? |
||
3kolik Profil * |
#4 · Zasláno: 17. 4. 2011, 11:08:22
Stále ta samá hláška, podle toho co se v ní píše mi přijde, že tam bude spíš nějaký problém s tou závorkou na 2. řádku.
|
||
3kolik Profil * |
#5 · Zasláno: 17. 4. 2011, 11:09:11
panther
díky |
||
Neználek309 Profil * |
#6 · Zasláno: 17. 4. 2011, 11:10:08
1.
id="'.(int)$_GET['tym'].'"); 2. Na konci vetvi nema byt endif a pokud se vyuzijou v jedne vetvi zavorky, mely by se vyuzit i jinde, tedy i u if vetve. |
||
johnl Profil |
#7 · Zasláno: 17. 4. 2011, 11:11:04
3kolik:
Pokud bys ten můj kód zkopíroval celý, mělo by to jít.. ;) |
||
3kolik Profil * |
#8 · Zasláno: 17. 4. 2011, 11:13:45
johnl
A jo, promiň, myslel jsem, že jsi změnil jen to, co jsi označil. Neználek309 To první tvým způsobem vůbec nefunguje a to druhé jsem nějak nepochopil. |
||
panther Profil |
#9 · Zasláno: 17. 4. 2011, 11:13:50
Neználek309:
„- je to preci napsano i v te chybove hlasce..“ apostrofy jsou u integeru zbytečné, stačilo odmazat tečku na konci. |
||
Tori Profil |
#10 · Zasláno: 17. 4. 2011, 11:26:42
3kolik:
Nechybí vám tam taky nějaké mysql_result nebo mysql_fetch_row? |
||
3kolik Profil * |
#11 · Zasláno: 17. 4. 2011, 11:36:51
Tori
Asi ano, jak je ten kód jsem psal na začátku. |
||
3kolik Profil * |
#12 · Zasláno: 17. 4. 2011, 13:23:18
Nějak jsem se s tím porval a uplácal toto:
<?php $brankar=mysql_query("select brankar from tymy where id=".(int)$_GET['tym']); if ($brankar='Nikdo') mysql_query ("udpate tymy set brankar = '".$_SESSION["jmeno"]."' where id= ".(int)$_GET['tym'].";" ); else echo "Bla bla" ?> Cílem je, aby v případě, že brankar=Nikdo, se hodnota brankar přepsala na jméno toho, kdo na ní klikl, čili Session Jméno. Jenže když kliknu, tak se nic nestane. Stránka se načte, nic na ní není, ale nic se nezmění ani v mysql. |
||
okolojdouci Profil * |
#13 · Zasláno: 17. 4. 2011, 13:28:50
if ($brankar=='Nikdo') mysql_query ("update tymy set brankar = '".$_SESSION["jmeno"]."' where id= ".(int)$_GET['tym'] ); Najdi tři rozdíly. Kromě toho: na http://cz.php.net/function.mysql_query si nastuduj Example #2. Od mysql_query evidentně čekáš něco jiného, než co to ve skutečnosti dělá. |
||
Keeehi Profil |
#14 · Zasláno: 17. 4. 2011, 13:41:44 · Upravil/a: Keeehi
<?php $brankar=mysql_result(mysql_query("select brankar from tymy where id=".(int)$_GET['tym']),0); if ($brankar=='Nikdo') mysql_query ("update tymy set brankar = '$_SESSION[jmeno]' where id= ".(int)$_GET['tym']); else echo "Bla bla"; ?> |
||
Tori Profil |
#15 · Zasláno: 17. 4. 2011, 14:29:05
3kolik:
Na co vlastně potřebujete ten první dotaz? Jestli jen chcete zajistit, aby se jméno brankáře dalo nastavit pouze jednou, tak vám stačí použít jeden dotaz: mysql_query("update tymy set brankar = '$_SESSION[jmeno]' where id= ".(int)$_GET['tym']." AND brankar = 'Nikdo'"); if (mysql_affected_rows()) echo 'Brankář byl změněn.'; else echo 'Nebylo možné změnit brankáře.'; |
||
3kolik Profil * |
#16 · Zasláno: 17. 4. 2011, 15:38:09
okolojdoucii
Na té stránce jsem hledal, ale bohužel nemám moc velkou znalost angličtiny. Popravdě nevím, co vůbec mysql_query dělá, jen jsem to měl u jednoho staženého příkladu před update tak jsem si myslel, že to tak má být. Keeehi Teď už se sice něco změní, jenže místo toho, aby se do brankar vložilo jméno, tak to úplně zmizí. Zkoušel jsem to i s tím řádkem co napsal okolojdouci a dopadlo to stejně Tori Nene, chci to tak, aby bylo možné tým opustit a aby tam potom mohl přijít někdo jiný. |
||
Keeehi Profil |
#17 · Zasláno: 17. 4. 2011, 16:59:54
3kolik:
„brankar vložilo jméno, tak to úplně zmizí“ Tak asi v době vkládání není v $_SESSION["jmeno"] nic. Aby jste zjistil, co je v tédobě v té proměnné umístěte před ten dotaz var_dump($_SESSION["jmeno"]);
|
||
3kolik Profil * |
#18 · Zasláno: 17. 4. 2011, 17:53:29
No jo, na tom něco bude, píše to NULL. Zkusil jsem si odhlásit a přihlásit a stále NULL. Tak teď už tedy vážně nevím
|
||
Keeehi Profil |
#19 · Zasláno: 17. 4. 2011, 17:56:27
3kolik:
No my to taky nevíme. A bez dalších informací ani vědět nebudeme. |
||
3kolik Profil * |
#20 · Zasláno: 17. 4. 2011, 17:59:18
No, co by jste ještě potřebovali vědět ?
|
||
Keeehi Profil |
#21 · Zasláno: 17. 4. 2011, 18:59:47 · Upravil/a: Keeehi
3kolik:
Je evidentní, že je problém v session, jenže nikde nic nenastavuješ. Takže by to chtělo ty části, kde se session vyskytuje. |
||
3kolik Profil * |
#22 · Zasláno: 17. 4. 2011, 19:56:10
No, sessions jsem nikde nijak nenastavoval.
|
||
panther Profil |
#23 · Zasláno: 17. 4. 2011, 22:19:24
3kolik:
nikde je nenastavuješ, přesto je používáš |
||
3kolik Profil * |
#24 · Zasláno: 18. 4. 2011, 14:37:44
Tak v tom asi vězí =D Děkuji
|
||
Časová prodleva: 13 let
|
0