Autor | Zpráva | ||
---|---|---|---|
T-ony Profil |
#1 · Zasláno: 4. 10. 2013, 12:37:32
Dobrý den, včera jsem před všechny skripty dal
ini_set('display_errors', 'On'); error_reporting(E_ALL); Následovalo nepříjemné zjištění, a plno výpisu. Některé funkce jsem měl zastarale - nahradil (kvůli tomu že by v budoucnu nemuseli jít). Ale pak tam mám chyby např. if(array_key_exists("iden_$identifikator", $poslany_produkt)){.. Upozorňuje že promena poslany produkt není pole. V první fázi proměna není pole ale jak na dané stránce uživatel odešle formulář tak tato chyba zmizí - uživatel vytvořil dané pole. (Další ostatní chyby jsou kvůli stejnému problemu ) Můžu tuto chybu zanedbat ? díky |
||
joe Profil |
#2 · Zasláno: 4. 10. 2013, 12:47:09
T-ony:
Jak plníš proměnnou $poslany_produkt ?
|
||
Borius Profil |
#3 · Zasláno: 4. 10. 2013, 12:48:38
T-ony:
Raději bych ošetřil i to, zda proměnná pole je: if ((is_array('poslany_produkt')) &&(array_key_exists("iden_$identifikator", $poslany_produkt))){…} |
||
joe Profil |
#4 · Zasláno: 4. 10. 2013, 12:51:54
Borius:
Když už, tak takhle is_array($poslany_produkt)
|
||
T-ony Profil |
#5 · Zasláno: 4. 10. 2013, 13:00:57
joe:
Borius if(is_array($poslany_produkt)){ if(array_key_exists("iden_$identifikator", $poslany_produkt)){....} } bez te kontroly is_array mi to vypíše Warning: array_key_exists() expects parameter 2 to be array, null given in a s ní mi tam zůstane už jenom oznámení Notice: Undefined variable: poslany_produkt Oznámení nevadí ? |
||
Joker Profil |
#6 · Zasláno: 4. 10. 2013, 13:17:54
T-ony:
Celá kontrola by asi byla: if(isset($poslany_produkt) && is_array($poslany_produkt)) To nebude házet ani tu poznámku (notice) |
||
Borius Profil |
#7 · Zasláno: 4. 10. 2013, 13:22:58
joe:
„Když už, tak takhle is_array($poslany_produkt)“ Jojo, díky za opravení. T-ony: „Undefined variable: poslany_produkt“ V tom případě je vhodné přidat i další ošetření: …&&(isset($poslany_produkt))… |
||
joe Profil |
#8 · Zasláno: 4. 10. 2013, 13:31:36
T-ony:
Problém je spíš v tom, kde tento kus kódu vlastně vůbec máš, protože evidentně ne na správném místě. „V první fázi proměna není pole ale jak na dané stránce uživatel odešle formulář tak tato chyba zmizí - uživatel vytvořil dané pole.“ Proč ten kód nemáš až tam, kde ta proměnná pole je, ale takto ho zbytečně podmínkuješ? |
||
Joker Profil |
#9 · Zasláno: 4. 10. 2013, 13:43:24
Borius:
Poznámka, ty operandy musejí být obráceně, is_array && isset bude notice házet pořád, musí to být isset && is_array (čímž se u nenastavené proměnné is_array vůbec nevyhodnotí a nevyhodí poznámku). |
||
T-ony Profil |
#10 · Zasláno: 5. 10. 2013, 00:31:01
Joker, joe, Borius:
Mám to celý blbě řešený - učím se na tom. Jinak vše ok po nastavení if(isset($poslany_produkt) and is_array($poslany_produkt)){..
takže díky moc |
||
Časová prodleva: 11 let
|
0