Šta je novo?

PHP pitanje: Kako preneti NIZ preko TEXT polja u formularu?

stvana

Čuven
Učlanjen(a)
29.01.2002
Poruke
41
Poena
604
Za lakse predstavljanje problema, izabracu neku asocijativnu pricu.Dakle,korisnik na html strani, koja sadrzi formu, bira recimo broj svoje dece (vanbracnu, tudju i ostalu, trenutno ne uzimamo u obzir , ).Tu promenljivu $broj_dece koja je >1 (sto znaci da nije po ceo dan programirao), saljemo na drugu stranu i na toj strani imamo jednu petlju koja izgleda ovako:

<?php
.
.
<form method=get action="brojdece2.php">
.
.
for($counter=0; $counter<$broj_dece; $counter++) {
echo "Unesite ime Vaseg deteta No. $counter:";
?>
<INPUT NAME="sta ovde staviti?" TYPE="TEXT" SIZE="70">
.
.

}
.
.
<INPUT type="submit">
.
.
i koja pravi onoliko text polja, koliko korisnik ima dece u koje on upisuje njihova imena.

PITANJE: Kako preneti niz imena dece preko TEXT polja tj. kakva je sintaksa NAME u INPUT TEXT polju posto dece ima >1?Ta imena dece treba posle preuzeti na strani brojdece2.php na kojoj treba ispisati uneta imena, opet preko for petlje.Kako bi izgledalo preuzimanje niza imena dece na brojdece2.php?For petlja bi izgledala otprilike ovako:

for($counter=0; $counter<$broj_dece; $counter++) {
echo "Ime Vaseg deteta No. $counter je:";
echo "sta ovde?";
.
.

}

Hvala unapred i pozdrav, ALEK
P.S.Nemojte bas po ceo dan da programirate...
 
HMMM, nisam siguran da ce uspeti jer nisam probao , a nesto sam lenj,
pokusaj da svakom elementu <INPUT TEXT ... > dodelis ID koji ce biti jednak vrednosti $counter promeljive ( u tom slucaju cini mi se moras eksplicitno da iz PHP-a echo - ujes text boxove) i preko ID pristupis u drugoj petlji svakom TEXT BOX-u. Ovo je samo ideja, ako mislis da moze pokusaj i javi da li je uspelo.
Dekius.
 
A što komplikuješ? Što jednostavno ne kažeš "unesite imena dece razdvojena zarezom" u jedno tekst polje, pa onda uradiš
$nizdece = explode("," , $tekstpolje) i imaćeš svu decu u jednom nizu? A ako baš hoćeš onako kako si počeo, onda umesto ovoga:
<INPUT NAME="sta ovde staviti?" TYPE="TEXT" SIZE="70">
stavi:
<INPUT NAME="polje<?=$counter=>" TYPE="TEXT" SIZE="70">
pa će ti tekst polja imati nazive $polje0, $polje1 itd.

A onda u drugom fajlu kad ih ispisuješ, tamo u petlji umesto
echo "sta ovde?"; stavi
echo $_GET['polje'.$counter];
(ili $_POST, u zavisnosti od toga kako prosleđuješ promenljive).
 
RESENO!!!!!
Dakle kod ide ovako:

PHP KÔD
<?php
<?php
.
.
<form method=get action="brojdece2.php">
.
.
for($counter=0; $counter<$broj_dece; $counter++) {
echo "Unesite ime Vaseg deteta No. $counter:";
?>
<INPUT NAME="imena_dece[]" TYPE="TEXT" SIZE="70">
.
.

}
.
.
<INPUT type="submit">
.
.

//brojdece2.php
$imena_dece = $_GET["imena_dece]";
for($counter=0; $counter<$broj_dece; $counter++) {
echo "Ime Vaseg deteta No. $counter je:";
echo "$imena_dece[$counter]";
.
.
}




Hvala na pomoci
 
nazalost kasno videh topic, ali upravo htedoh da napisem to resenje :beat:

jednostvano moras da koristis promenljivu koja je niz, sto si i uradio kad si definisao ime sa ime_polja[] i onda je pokupis sa $_GET. uostalom sve promenljive koje su unesu na strani se prosledjuju u nizovima.
 
Nazad
Vrh Dno