Autor | Zpráva | ||
---|---|---|---|
kuba95 Profil |
#1 · Zasláno: 5. 4. 2011, 19:31:59 · Upravil/a: kuba95
Ahoj,
Potřebuju pomoct s tímhle. Když jdu na stránku, ukáže mi to chybu: Parse error: syntax error, unexpected T_ELSE in /home/users/kasparek/ptc.jecool.net/web/success.php on line 235 Poradíte mi prosím někdo, co s tím?? Děkuji P.S. ta chyba na řádku 235 je tomhle kousku na řádku 93 - nevešlo se to sem celý //referals visits $sqlzd = "SELECT * FROM tb_users WHERE username='$user'"; $resultzd = mysql_query($sqlzd); $myrowzd = mysql_fetch_array($resultzd); $juaz=$myrowzd["referer"]; if ($juaz!="") { $sqlzde = "SELECT * FROM tb_users WHERE username='$juaz'"; $resultzde = mysql_query($sqlzde); $myrowzde = mysql_fetch_array($resultzde); $juaze=$myrowzde["referalvisits"]; $billetes=$myrowzde["money"]; $sqle = "SELECT * FROM tb_upgrade WHERE username='$juaz'"; $resulte = mysql_query($sqle); $rowe = mysql_fetch_array($resulte); $referalclick1 = "SELECT * FROM tb_clicks WHERE item='referalclick' and howmany='1'"; $referalclick2 = mysql_query($referalclick1); $referalclick3 = mysql_fetch_array($referalclick2); $p1referalclick1 = "SELECT * FROM tb_clicks WHERE item='p1referalclick' and howmany='1'"; $p1referalclick2 = mysql_query($p1referalclick1); $p1referalclick3 = mysql_fetch_array($p1referalclick2); $p2referalclick1 = "SELECT * FROM tb_clicks WHERE item='p2referalclick' and howmany='1'"; $p2referalclick2 = mysql_query($p2referalclick1); $p2referalclick3 = mysql_fetch_array($p2referalclick2); $p3referalclick1 = "SELECT * FROM tb_clicks WHERE item='p3referalclick' and howmany='1'"; $p3referalclick2 = mysql_query($p3referalclick1); $p3referalclick3 = mysql_fetch_array($p3referalclick2); $p4referalclick1 = "SELECT * FROM tb_clicks WHERE item='p4referalclick' and howmany='1'"; $p4referalclick2 = mysql_query($p4referalclick1); $p4referalclick3 = mysql_fetch_array($p4referalclick2); $p5referalclick1 = "SELECT * FROM tb_clicks WHERE item='p5referalclick' and howmany='1'"; $p5referalclick2 = mysql_query($p5referalclick1); $p5referalclick3 = mysql_fetch_array($p5referalclick2); $referalclick4 = $referalclick3["price"]; $p1referalclick4 = $p1referalclick3["price"]; $p2referalclick4 = $p2referalclick3["price"]; $p3referalclick4 = $p3referalclick3["price"]; $p4referalclick4 = $p4referalclick3["price"]; $p5referalclick4 = $p5referalclick3["price"]; if ($myrowzde["account"]=="premium1") { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$p1referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } else { if ($myrowzde["account"]=="premium2") { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$p2referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } else { if ($myrowzde["account"]=="premium3") { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$p3referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } else { if ($myrowzde["account"]=="premium4") { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$p4referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } else { if ($myrowzde["account"]=="premium5") { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$p5referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } else { $sqlexd = "UPDATE tb_users SET referalvisits=referalvisits+1, money=money+'$referalclick4' WHERE username='$juaz'"; $resultexd = mysql_query($sqlexd); } } $sqlex = "UPDATE ads SET clicks=clicks+'1', clicksleft=clicksleft-'1' WHERE ad_id='$adse'"; $resultex = mysql_query($sqlex); echo "<img src='images/ok.png'> "; exit(); } else { $sqlex = "UPDATE ads SET outside=outside+'1' WHERE ad_id='$adse'"; $resultex = mysql_query($sqlex); echo "<img src='images/notlogged.gif'>"; exit(); } ?> |
||
Joker Profil |
#2 · Zasláno: 5. 4. 2011, 19:34:33
kuba95:
Najděte si řádek 235 a opravte syntaktickou chybu někde okolo něj. |
||
Tori Profil |
#3 · Zasláno: 5. 4. 2011, 19:45:50
kuba95:
Bylo by trochu čitelnější místo if (neco) else if (necoJineho) else if (nic) if (neco) elseif (necoJineho) elseif (nic) |
||
panther Profil |
#4 · Zasláno: 5. 4. 2011, 19:54:21
Tori:
„Bylo by trochu čitelnější“ a ještě čitelnější by byl switch .
|
||
kuba95 Profil |
#5 · Zasláno: 5. 4. 2011, 20:57:21
elseif mi nefugovalo. Co je ten switch??
|
||
Joker Profil |
#6 · Zasláno: 5. 4. 2011, 21:03:46
|
||
kuba95 Profil |
#7 · Zasláno: 5. 4. 2011, 21:04:10
Nevíte někdo, co je to za chybu?? Nemůžu tam nic najít...
|
||
Tori Profil |
#8 · Zasláno: 5. 4. 2011, 21:22:21 · Upravil/a: Tori
kuba95:
Chyba je v tom, že po else nemůže následovat další else. Spočítejte si složené závorky a uvidíte, že to chybové else následuje po: if ($myrowzde["account"]=="premium3") { // řádek 61 //..kus kodu } else { // řádek 65 // ...kod } else { // řádek 93, chyba Od boku tipuji, že else na řádku 93 se vztahuje k if na řádku 7, což by znamenalo, že na ř.83 je potřeba uzavřít ještě tři předchozí podmínky. (Ale jen věštím bez záruky, nevím, jak ten skript má fungovat.) |
||
kuba95 Profil |
#9 · Zasláno: 5. 4. 2011, 21:52:18 · Upravil/a: kuba95
když jsem tam doplnil 3 konce závorek, tak mi to hází chybu:
Parse error: syntax error, unexpected $end in /home/users/kasparek/ptc.jecool.net/web/success.php on line 249 - přičemž řádka 249 je úplně poslední řádka: ?> Tak nevim |
||
pcmanik Profil |
#10 · Zasláno: 5. 4. 2011, 22:00:28
kuba95:
Skus ten kod cely zjednodusit, nepotrebujes samostatne premenne na query, staci ti to napisal rovno do toho, pouzivaj switch ako uz bolo spomenute. Tym padom sa ti kod rapidne skrati a odhalenie chyby bude ovela jednoduchsie, nikomu sa tu nechce hladat chyby v polkilometrovom kuse kodu. |
||
kuba95 Profil |
#11 · Zasláno: 5. 4. 2011, 22:28:23
pcmanik:
jedinej problém je, že já nevim, jak to zkrátit a zjednodušit. Zas natolik s PHP neumim |
||
petr 6 Profil |
#12 · Zasláno: 5. 4. 2011, 22:57:03
kuba95:
„jedinej problém je, že já nevim, jak to zkrátit a zjednodušit.“ [#10] Nebo pro začátek hierarchicky odsazovat bloky {} a uvidíš to hned. |
||
Joker Profil |
#13 · Zasláno: 5. 4. 2011, 23:23:19
petr 6:
„pro začátek hierarchicky odsazovat bloky {} a uvidíš to hned.“ Lepší řešení je sehnat si pořádný editor a neměl by takové problémy. Normální PHP vývojové prostředí (IDE) formátuje kód automaticky a zvýrazňuje syntaktické chyby, takže opravit triviální syntaktickou chybu (což na 99% je příčina toho vlákna) trvá několik sekund a ne několik hodin. (Poznámka, právě označování syntaktických chyb a ještě „intellisense“ + bublinová nápověda jsou dvě hlavní věci, díky kterým IDE řádově zvýší produktivitu práce) Jinak ale třeba i PSPad umí zvýrazňovat související závorky. |
||
kuba95 Profil |
#14 · Zasláno: 5. 4. 2011, 23:28:32
a jakej editor by jsi mi teda doporučil, PSPad??
|
||
l564 Profil |
#15 · Zasláno: 6. 4. 2011, 07:32:12
kuba95:
A toto jsi četl? PHP editory |
||
Joker Profil |
#16 · Zasláno: 6. 4. 2011, 07:58:53 · Upravil/a: Joker
l564:
Ehm, to je přesně to před čím jsem varoval. Žádný speciální PHP editor k tvorbě stránek nepotřebujete. … Vystačíte si s obyčejným textovým editorem. No to je sice pravda, jenže pak to vypadá viz tohle vlákno: Nedokážete si poradit ani s triviální syntaktickou chybou. PSPad je takový použitelný základ, ale na PHP je daleko lepší IDE (vývojové prostředí), než textový editor. Já třeba na PHP používám Eclipse (má spoustu variant, na PHP je samozřejmě Eclipse for PHP developers) Dodatek: Téma editorů pro PHP se tu už řešilo, třeba V čem píšete PHP. Možná by bylo dobré udělat takový přehled editorů. |
||
Časová prodleva: 13 let
|
0