[ Ivan Golubović @ 15.09.2006. 15:04 ] @
Imam specifichan problem...
Naime zelim da ubacim n polja u tabelu. Na prvoj stranici imam upit koliko polja korisnik zeli da ubaci i onda generishem formular (FORM) neshto nalik ovome:
Code:
<form id="form1" name="form1" method="post" action="">
      <table>
        <tr>
          <td>ID:</td>
          <td>tekst:</td>
        </tr>
        <? 
        for($i=1;$i<$odg+1;$i++)
        {
        ?>
        <tr>
          <td><?=$i;?></td>
          <td>
            <textarea name="tekst<?=$i;?>" cols="60" rows="3"></textarea>
          </td>
        </tr>
        <? } ?>
        <tr>
          <td colspan="2">
              <input type="submit" name="Submit" value="U redu" />
</td>
        </tr>
      </table>
    </div>
</form>

E sada kako da ubacim sva ta plolja u tabelu? Problem je shto ne znam koliko polja moze da se pojavi...
[ Radovan__III @ 15.09.2006. 16:26 ] @
Mozda ne naj elegantnije resenje ali ja bi po preuzimanju podataka spjio sve te podatke koje dobije iz generisanih polja ( bez ovih za koja znas sigurno da ce se pojaviti ) , podatke razdvojis sa npr znakovima @@@@ i onda sve to stavis u jednu celiju u tabeli.
[ stefaneg @ 16.09.2006. 12:54 ] @
A drugi način ti je da u bazi napraviš još jednu tabelu i za svaki novi input (odnosno textfield) -> novi red, a od podataka u novoj tabeli staviš ono što će ti biti potrebno da svaki zapis (novi red) povežeš sa id-om upisa ili korisnika ili čime već misliš da identifikuješ

npr:

tabela submiti:

submit_id
user_id
...
(neki podaci koje još čuvaš o submitu)
...

tabela inputi:

input_id
submit_id
text
[ glavince @ 16.09.2006. 13:36 ] @
A pametnije bi bilo da napravis i nizu od textarea:
<textarea name="tekst[]" cols="60" rows="3"></textarea>
kako bi posle :
foreach($_POST['tekst'] as $text) {
insert ito bla bla -> $text
}
[ Ivan Golubović @ 19.09.2006. 00:29 ] @
Ni jedno od gore unetih nije zadovoljavajuce reshenje koje trazim...
phpMyAdmin ima to shto meni treba (u stvari neshto slichno) kod pravljenja novih polja u tabeli...
[ trivial @ 20.09.2006. 14:23 ] @
ono shto je glavnice napisao trebalo bi da ti reshi problem " Problem je shto ne znam koliko polja moze da se pojavi...";

mada,ako ti je suditi po zadnjoj rechini onda ti nisi dodbro objasnioo shta tachno zhelish.
phpmyadmin kod unosa polja ima fixan broj kolona i n redova (koji zavise od unosa korsinia).

neshto ovako

Code:

?>
<form>
<input type=hidden name="brojpolja" value=$n>
<?
for($i=1;$i< $n;$i++) {

?>

<tr>
<td>
<input type="text" name="polje<?=$i?>[text1]">
</td>
<td>
<textarea name="polje<?=$i?>[textarea]">
<td>
<input type="text" name="polje<?=$i?>[text2]">

<?

}


kao shto je glavnic rekao samo shto korsitish assoc array i pristupah na sledeci nachin:

Code:


for ($i=1; $i<count($_POST[brojpolja];$i++){

 insert into .. $_POST[polje$i][text1], $_POST[polje$i][text2],$_POST[polje$i][textarea]



}