Hallo allemaal,

zit weer even vast met een volgende probleem.
Ik heb via javascript optie toegevoegd om rows toe
te voegen aan een tabel. Tot zover geen probleem!

Nu wil ik na de submit van het formulier deze waarden
ook opslagen in de database en daar zit ik dus vast.

Via een foreach kan ik alle rows laten weergeven via
een echo, maar hoe krijg ik die verschillende rows in mijn database?

[code]
<?php
$contract = $_POST['contract'];
$broker = $_POST['dropdown1'];
$enduser = $_POST['dropdown2'];
$dof = $_POST['dof'];
$flightnr = $_POST['flight'];
$adep = $_POST['adep'];
$ades = $_POST['ades'];


foreach($flightnr as $a => $b)
echo "$contract - $broker - $enduser - $flightnr[$a] - $adep[$a] - $ades[$a] <br>";
?>
[code]

thanks voor de tips en hulp alvast!
@Aar: flightnr is 1 van de velden die altijd gedupliceerd is bij het drukken op de add row knop (Java).



de html hierachter is:

<html>
<body>
  <table id="flights" class="curvedEdges" width="600" border="0" cellspacing="0" cellpadding="10">
    <tbody>
      <tr>
      	<td width="20"><input type="checkbox" name="checkbox[]" id="checkbox"></td>
        <td width="50"><input name="dof[]" type="date" required="required" id="dof"></td>
        <td width="25"><input name="flight[]" type="text" required="required" id="flight" size="5" maxlength="5"></td>
        <td width="25"><input name="adep[]" type="text" required="required" id="adep" size="5" maxlength="5"></td>
        <td width="25"><input name="etd[]" type="text" required="required" id="etd" size="5" maxlength="5"></td>
        <td width="25"><input name="eta[]" type="text" required="required" id="eta" size="5" maxlength="5"></td>
        <td width="25"><input name="ades[]" type="text" required="required" id="ades" size="5" maxlength="5"></td>
        <td width="25"><input name="pax[]" type="text" required="required" id="pax" value="0" size="5"></td>
        <td width="25"><select name="flighttype[]" id="select">
          <option value="F">Ferry</option>
          <option value="C">Live</option>
        </select></td>
      </tr>
    </tbody>
  </table>
</body>
</html>


de [] bij flight moeten ertussen blijkbaar om de foreach te doen lukken, dit heb ik gehaald uit:

"Getting Submitted Form Values in PHP
The main purpose of above code is to take input from user and persist it in database. Hence we may want to submit the above form and fetch its values in PHP to store the data in database.

If you notice we have multiple input textboxes with the same name. So in order to get these values in PHP request parameter, we need to modify our HTML. We need to append [] at the end of name of each input boxes including select box.

Thus our textbox definition:

<input type="text" name="txt">
Will change into:

<input type="text" name="txt[]">"

Met de gewone echo krijg ik daardoor als resultaat:

c12345 - Air Charter - end user 1 - - dep1 - des1
c12345 - Air Charter - end user 1 - - dep2 - des2

Wat ook correct is.
Inderdaad, met een [] in de name laat je input doordoen als een array, zoadat foreach er iets mee kan.
Ik neem aan dat het werkt?

Verder zal je met Java eerder JavaScript bedoelen. Tussen beiden zit een aanzienlijk groot verschil.
@Aar: Ja inderdaad de foreach op zich werkt aangezien het met een simpele echo wel correct is en inderdaad JavaScript.

UPDATE: ik merk wel dat als er bv 3 rows zijn hij enkel de laatste row in de database heeft opgeslagen.
Hoe vaak stel je $sql in?
Hoe vaak voer je mysql(i)_query() uit?

Reageren