Autor | Zpráva | ||
---|---|---|---|
vahrner Profil |
#1 · Zasláno: 27. 11. 2012, 16:15:24
Zdravím,
trvalo mi docela dlouho, než jsem z dokumentací vyrazil opravdu jednoduchý kód, kterým můžu z formuláře poslat do databáze informaci o tom, jaké checkboxy byly zatrhnuty - s PHP začínám. Ale pořád to není úplně ono... Sice to totiž funguje, ale na stránce neustále straší hláška "Warning: implode() [function.implode]: Invalid arguments passed in ..... on line 55" Kód: Rajče:<input type="checkbox" value="rajce" name="food[]"><br /> Sejra:<input type="checkbox" value="sejra" name="food[]"><br /> Houba:<input type="checkbox" value="houba" name="food[]"><br /> ... $ingredience = $_POST['food']; $seznam_ingredienci = implode(',', $ingredience); // řádek 55 mysql_query("INSERT INTO tabulka(vyber) VALUES('$seznam_ingredienci')"); Mám špatně zapsané pole? Nemáte někdo nápad, jak tu hlášku odstranit? |
||
Joker Profil |
vahrner:
A co je v $ingredience? Kdyžtak se to zjistí: var_dump($ingredience); edit: Špatný název proměnné |
||
vahrner Profil |
#3 · Zasláno: 27. 11. 2012, 16:30:38
Myšleno tohle?
array(2) { [0]=> string(5) "sejra" [1]=> string(5) "houba" } |
||
Joker Profil |
#4 · Zasláno: 27. 11. 2012, 17:00:42
vahrner:
A když je v proměnné $ingredience přesně tohle, vyhodí to taky tu chybovou hlášku? To by bylo divné. Ale celkem chápu, že by to vyhodilo tu chybovou hlášku v případě, že není nic zaškrtnuté. |
||
vahrner Profil |
#5 · Zasláno: 28. 11. 2012, 21:19:18
No tohle
array(2) { [0]=> string(5) "sejra" [1]=> string(5) "houba" } mi to vypsalo ale až ve chvíli, co jsem ve formuláři dva checkboxy zaškrtl a formulář odeslal. Jinak mi to vypisuje klasicky NULL. Nebo jsem to pochopil špatně? |
||
abc Profil |
#6 · Zasláno: 28. 11. 2012, 21:33:43
To ti napsalo samozřejmě správně. Musíš ošetřit situaci 1) před odesláním formuláře a 2) když nikdo nic nezaškrtne
|
||
vahrner Profil |
#7 · Zasláno: 28. 11. 2012, 21:37:39
Takže proč to vypisuje chybovou hlášku je pořád záhada?
|
||
Alphard Profil |
#8 · Zasláno: 28. 11. 2012, 21:42:26
vahrner:
„Takže proč to vypisuje chybovou hlášku je pořád záhada?“ Není. Kolegové se vám snažili naznačit, že implode() vyžaduje na vstupu array (pole). Nelze mu dávat NULL. |
||
Joker Profil |
#9 · Zasláno: 28. 11. 2012, 21:48:51
vahrner:
Šlo mi o to, jestli se zároveň objeví i ta chyba. Protože tohle by projít mělo. Zatímco je dost možné, že když nebudou zaškrtnuté checkboxy žádné, opravdu to neprojde. |
||
user243 Profil |
#10 · Zasláno: 29. 11. 2012, 06:00:41
a jen
$seznam_ingredienci = implode($ingredience); |
||
Časová prodleva: 11 let
|
0