Autor | Zpráva | ||
---|---|---|---|
nightrider Profil |
#1 · Zasláno: 23. 7. 2009, 09:34:47 · Upravil/a: nightrider
Poradí mi někdo co dělám špatně? Hodně lidí se teď určo zasměje, ale vážně nechápu co mu vadí. Má moc proměných? Když nechám jen první, tak vše o.k. ale jak je tam seznam, tak je to v prd... Ví někdo kde mám chybu? Testoval jsem formou mázání postupně, ale to mi nic neřeklo. Někde je nějaká ptákovinka kterou furt přehlížim nebo fakt nevim. Děkuju
|
||
Nox Profil |
#2 · Zasláno: 23. 7. 2009, 09:44:55
Smát se nebudu, ale je to hodně prasárna, pro toto se používají pole, podívej se na ně: http://www.linuxsoft.cz/article.php?id_article=179
|
||
nightrider Profil |
#3 · Zasláno: 23. 7. 2009, 09:53:46 · Upravil/a: nightrider
Jako prasárnu by jsem to asi neoznačoval :-) Jsou to podmínky které musí být splněny před odeslánim. Pokud jedna chybý, tak se nic neodešle. Jo, byla by to prárna když by jsem takhle chtěl někomu něco ukázat, ale já to mám jen na to odeslání.
|
||
tiso Profil |
#4 · Zasláno: 23. 7. 2009, 09:53:57
nightrider: v tom kóde chyba nie je, iba ak E_NOTICE o neexistencii premenných
|
||
nightrider Profil |
#5 · Zasláno: 23. 7. 2009, 10:01:27 · Upravil/a: nightrider
To jsem právě testoval a vše je jak má. Mám celkem dlouhej formulář a pokavať nějaká podmínka neni vypsana, tak se začervená pole a vypíše se hláška kde je chyba. Hláška se mi skutečně vypíše, ale ve tvaru:
Nalezeny chyby: [tady by melo být vypsáno co, ale neni. Proměný jsou dobrý]. Nalezeno chyb: "1". Opravte prosím chyby. Pokud nechám jenom jednu podmínku, tak všechno maká jak má. if ($a38){ // takhle mně pustí Postupně jsem testoval proměnný formou mazání. Pokud nenastala změna, tak jsem jí vrátil zpět a vymazal další a tak jsem to dělal až do konce. To je právě to divný. Nejdřív jsem si myslel, že mám někde chybu v podmínce, ale po testování jsem poznal, že chyba musí být v kontrole. Pokud je tvar kontroli podmínek v podmínce :-) takhle: if ($a38){ // Je to o.k. if ($a38 && $a39){ // Tak tady je hned problém. $a39 jsem kontroloval a vše o.k. prostě se mu nelíbí && Nebo to mám udělat jak mi radil NOX? $a[38]="Něco"; $a[39]="Něco"; |
||
Smokie Profil |
#6 · Zasláno: 23. 7. 2009, 10:17:15
Tak já myslím že je tam základní chyba v syntaxi, mělo by to být
if (($a38) && ($a39)....atd){...} nezkoušel jsem to ale sedělo by to k mojí teorii. šlo by to zapsat i if (($a38==true) && ($a39==true)) {} |
||
tiso Profil |
#7 · Zasláno: 23. 7. 2009, 10:18:31
nightrider: daj sem celý kód, alebo aspoň relevantnú časť s tým ako vypisuješ tú chybu, vzor formulára, ...
|
||
nightrider Profil |
#8 · Zasláno: 23. 7. 2009, 10:21:48
"Smokie,,
To co popisuješ je fakt zajímaví a vypadá to, že by to fachat snad i mělo, ale v syntaxi, taky chyba nebude. Tu samou podmínku používám v 1.kroce a tam to jede normalne, ale ve 2.kroce to chce jen 1 podmínku. |
||
tiso Profil |
#9 · Zasláno: 23. 7. 2009, 10:26:17
nightrider: toto nestačí...
|
||
nightrider Profil |
#10 · Zasláno: 23. 7. 2009, 10:33:31 · Upravil/a: nightrider
Kod byl dobře, neni předmětem šetření :-)
|
||
tiso Profil |
#11 · Zasláno: 23. 7. 2009, 10:34:48
nightrider: ježiši, preskočil si materskú škôlku programovania...
|
||
nightrider Profil |
#12 · Zasláno: 23. 7. 2009, 10:38:14 · Upravil/a: nightrider
co? JJ, jsem dobrej :-) Nějakej průser? Nic nepřeskakuju, ale i ty knihovny jsou nějaké divné ;-) Poradí mi tedy někdo co dlám blbě? Prosím, hlavně bez dezvy jako všechno atd.
|
||
tiso Profil |
#13 · Zasláno: 23. 7. 2009, 13:08:37
nightrider: „Prosím, hlavně bez dezvy jako všechno atd.“
Ale na to sa asi ani nič iné nedá povedať... Problém je v celej logike, robíš to príliš zložito. Nebolia ťa z neustáleho stláčania Ctrl+C a Ctrl+V ruky? Takto sa vážne neprogramuje. Najlepšie bude začať od znovu. Takže vysvetli čo potrebuješ spraviť. Z toho čo tu je som pochopil že ide o spracovanie viacstránkového formulára. |
||
nightrider Profil |
#14 · Zasláno: 23. 7. 2009, 13:46:22 · Upravil/a: nightrider
Přesně tak :-) všechno maká jak má :-) jen ta druhá část neprojde pokud je za if ($a38 && $a39 atd.) tohle je jediný problém který tam mam. Tedy alespon funkčností :-)
|
||
nightrider Profil |
Prosím Moderátora at ty podmínky (#9,#11) vymaže. Všechno se dlouho načítá a je to nepřehledný. Děkuju
Moderátor Alphard: Souhlasím
|
||
tiso Profil |
#16 · Zasláno: 23. 7. 2009, 14:11:22
nightrider: čo ti napíše var_dump($a38, $a39); ?
|
||
nightrider Profil |
#17 · Zasláno: 23. 7. 2009, 14:16:06 · Upravil/a: nightrider
Napíše mi: bool(false) co to znamena nevim :-( neco má nepravdivé, ale co? Kdyz dám jen jednu podminku ($a38), tak mi dotaz vypisuje: string(3) "ano"
|
||
tiso Profil |
#18 · Zasláno: 23. 7. 2009, 14:26:00
nightrider: v tom prípade podmienka funguje správne
|
||
nightrider Profil |
#19 · Zasláno: 23. 7. 2009, 14:28:20 · Upravil/a: nightrider
Ještě se vrátim k tý podmínce: Ty si myslíš, že by jsem to měl vypsat spíš jako $req[1]
a potom do if dát jen ($req)? To by mně už ruka nebolela :-) Jasný, ale potom tedy vidiš chybu někde kde kontroluju posty, že? To by se pole začervenali a vypsalo by kde je chyba. Spočítal mi sice jednu chybu, ale nevypsal jí. Kdyz dam jen jednu podminku, tak mi dotaz vypisuje: string(3) "ano" |
||
nightrider Profil |
#20 · Zasláno: 23. 7. 2009, 16:28:34 · Upravil/a: nightrider
Pomůže mi prosím někdo?
Už vim proč to nešlo: if (eregi("^[[:alnum:]][0-9]{0,5}$",stripslashes(trim($_POST['telz'])))) { // Jen nevim proč je tohle špatně if (eregi("^[[:alnum:]][0-9]{1,5}$",stripslashes(trim($_POST['telz'])))) { // Změnil jsem jen počet povolených znaků |
||
Časová prodleva: 15 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0