Autor | Zpráva | ||
---|---|---|---|
rad Profil * |
#1 · Zasláno: 24. 4. 2011, 00:29:48
if(isset($_POST['submit3'])) { for($i = 0; $i < 3; $i++) { if(isset($_POST["p_scnt$i"])) { for($b=0;$b < count($_POST["p_scnt$i"][$b]);$b++) { $option_produit.$i=$_POST["p_scnt".$i.""][$b]; } } var_dump ($option_produit.$i); } } co je spatne ? vypada to ze je to nekonecna smycka |
||
Keeehi Profil |
#2 · Zasláno: 24. 4. 2011, 00:35:52 · Upravil/a: Keeehi
Místo:
for($b=0;$b < count($_POST["p_scnt$i"][$b]);$b++) for($b=0;$b < count($_POST["p_scnt$i"]);$b++) A vypíše se Vám vůbec něco? Protože je to hodně divná konstrukce. Obzvlášť $option_produit.$i
Čeho se vlastně snažíte dosáhnout? |
||
G3n3sis19 Profil |
#3 · Zasláno: 24. 4. 2011, 00:48:23
místo té tečky bych tipoval chtěl majitel tématu dát =
|
||
Keeehi Profil |
#4 · Zasláno: 24. 4. 2011, 00:51:35
G3n3sis19:
Tak to by byla úplná blbost. Potom by for na třetím řádku přestával dávat smysl. Spíš bych to viděl, že rad skoro nemá páru co vlastně dělá a zkouší to nějak spatlat dohromady. Pokud napíše, co dělá, může mu někdo poradit funkční základ, a kterém se dá stavět. |
||
G3n3sis19 Profil |
#5 · Zasláno: 24. 4. 2011, 00:52:53
ale vardump(); ze dvou proměnných spojených dohromady mu vznikne akorát tak chyba
|
||
rad Profil * |
#6 · Zasláno: 24. 4. 2011, 01:01:47
mam formular ktery vypada asi takto :
s tim ze se muzou pridavat dinamicky inputy jako je to napriklad tady : name="p_scnt0[] jsou dva protoze tedy nevim kolik nakonec bude poli name="p_scnt0[] name="p_scnt1[] name="p_scnt2[] zkousim nejdriv projit vsechny name="p_scnt0[] pak name="p_scnt1[] atd pak bych to chtel postupne davat do databaze - takze v te smycce vezmu name="p_scnt0[] pridam a pokracovat. snad je to trosku srozumitelne <form id="form" action="/projet_tutore_online/admin/produit.php" method="post"> <fieldset> <legend>option Categorie produit</legend> <div id="p_scents0"> <h3>cat1</h3> <a href="#" id="addScnt0">Add Another Input Box</a> <p> <label for="p_scnts"> <input type="text" id="p_scnt0" size="20" name="p_scnt0[]" value="" placeholder="option"/> </label> </p> <input type="hidden" value="175" name="hidden"/> <p> <label for="p_scnts"> <input type="text" id="p_scnt" size="20" name="p_scnt0[]" value="" placeholder="option"/> </label> <a href="#" id="remScnt">Remove</a> </p> </div> <div id="p_scents1"> <h3>cat2</h3> <a href="#" id="addScnt1">Add Another Input Box</a> <p> <label for="p_scnts"> <input type="text" id="p_scnt1" size="20" name="p_scnt1[]" value="" placeholder="option"/> </label> </p> <input type="hidden" value="176" name="hidden"/> </div> <div id="p_scents2"> <h3>cat3</h3> <a href="#" id="addScnt2">Add Another Input Box</a> <p> <label for="p_scnts"> <input type="text" id="p_scnt2" size="20" name="p_scnt2[]" value="" placeholder="option"/> </label> </p> <input type="hidden" value="177" name="hidden"/> </div> <input type="submit" value="Envoyer" name="submit3" class="awesome green medium"/> </fieldset> </form> |
||
Keeehi Profil |
#7 · Zasláno: 24. 4. 2011, 01:02:24
G3n3sis19:
Ve skutečnosti ne. Příklad: $a = "Petr"; $b = "Pavel"; var_dump($a . " a " . $b); //string(12) "Petr a Pavel" |
||
rad Profil * |
#8 · Zasláno: 24. 4. 2011, 01:05:17
vardump() jsem volal jen proto abych videl vysledek meho snazeni
|
||
rad Profil * |
#9 · Zasláno: 24. 4. 2011, 01:07:49
proste chtel bych projit vsechny pole name="p_scnt0[] name="p_scnt1[] name="p_scnt2[]
s tim ze nevim kolik bude mit name="p_scnt0[] name="p_scnt1[] name="p_scnt3[] prvku proto to for uz si s tim nevim rady |
||
Keeehi Profil |
#10 · Zasláno: 24. 4. 2011, 01:09:59 · Upravil/a: Keeehi
Takto budou vypadat ty vaše dynamicky přidávané inputy. Name bude u všech stejné! (ostatní věci jako id nejsou podstatné, tam si cpěte co chcete)
<input type="text" id="p_scnt0" size="20" name="p_scnt[]" value="" placeholder="option"/> <input type="text" id="p_scnt1" size="20" name="p_scnt[]" value="" placeholder="option"/> <input type="text" id="p_scnt2" size="20" name="p_scnt[]" value="" placeholder="option"/> A takto ten script pro ukládání do databáze: if(!empty($_POST['submit3'])){ foreach($_POST["p_scnt"] as $hodnota){ $hodnota = mysql_real_escape_string($hodnota); $dotaz = "INSERT INTO tabulka (sloupec) VALUES ('$hodnota')"; echo $dotaz."<br>"; // jen aby jste viděl, co se ukládá mysql_query($dotaz); } } |
||
rad Profil * |
#11 · Zasláno: 24. 4. 2011, 01:26:06
diky ale ja prave potrebuju oddelit ty jednotlive inputy - proto tam mam ten hidden <input type="hidden" value="175" name="hidden"/> kdy vsechno z name="p_scnt0[]" je prave potreba ulozit take s hodnotou 175 name="p_scnt[]" s hodnotou 176 atd
|
||
G3n3sis19 Profil |
#12 · Zasláno: 24. 4. 2011, 01:28:58
$promenna = array(175 => $_POST['p_scnt0'], $_POST['p_scnt']);
|
||
rad Profil * |
#13 · Zasláno: 24. 4. 2011, 01:40:16
jde mi o to ze ty hidden budou vzdy jen se tremi hodnotami a ty inputy s x hodnotami takze napriklad pro hidden xy1 budou dva inputy pro hidden xy2 bude jen jeden nebo 5 atd
proto potrebuju nejak prvne dostat kazdy hidden zvlast a pak vsechny inputy s nim spojene atd ... |
||
rad Profil * |
#14 · Zasláno: 24. 4. 2011, 01:42:48
ok myslim ze to mam
foreach($_POST["hidden"] as $hidden) { $hidden= mysql_real_escape_string($hidden); foreach($_POST["p_scnt"] as $value) { $value = mysql_real_escape_string($value); $db->query("INSERT INTO option_option VALUES ('','','$value');"); echo $dotaz."<br>"; // jen aby jste viděl, co se uklád } } |
||
G3n3sis19 Profil |
#15 · Zasláno: 24. 4. 2011, 11:12:27
$dotaz není deklarovaná, tutíž se ti nezobrazí nic až na ty <br>
|
||
rad Profil * |
#16 · Zasláno: 24. 4. 2011, 12:04:07
jo on je tam jeste jiny problem ze porad potrebuju prochazet vsechno postupne ...ale uz si s tim snad nejak poradim - takhle se totiz pro kazdy hidden projdou vsechna pole coz nechci potrebuju aby se postupne pro kazdy hidden ..
|
||
Časová prodleva: 13 let
|
0