Enregistrer un tableau javascript

Bonjour,

J'ai un boutton où dès que je clique dessus je fait appel à une fonction "Ajouter_une_ligne". C'est un tableau dynamique. Je clique 3 fois il y aura 3 lignes de 6 inputs text. Je clique 20 000 fois il y aura 20 000 lignes de 6 inputs text chacunes.

J'ai réussi à différencier les noms de chaque input comme ceci : input11 input 12 , 13, 14 , 15 ,16
input 21 input 22, 23,24 ,25 ,26

etc etc ...

Ma question est simple. Comment enregistrer ce tableau dans ma base de données mysql ?

Merci d'avance pour votre aide.
Configuration: Windows Vista
Firefox 3.0.1

5 réponses

  1. Bjr

    Remplace

    elem.id = 'id'+j+i;
    elem.name = 'nom'+j+i;

    par

    elem.id = 'input['+j-1+']['+i+']';
    elem.name = 'input['+j-1+']['+i+']';


    et tu auras les mêmes noms que dans mon exemple
    0
    1. bjr

      la fonction Ajouterligne c'est toi qui l'a écrite ?

      De toute façon c'est bien dans cette fonction que tu dois modifier les attributs name de tes balises input

      Donne le code de ta fct ça pourrait aider ...
      0
      1. Salut PhP,

        En faites mon tableau est dans une fonction javascript. J'ai :

        <script>

        function(ajouterligne)
        {

        la je remplis mon tableau

        }

        </script

        <?php

        <input type="button" value="Ajouter une ligne" onclick="Ajouterligne" />

        ?>

        Je calle un peu... =(
        0
        1. Bjr

          Bien mais tu dois nommer différemment tes inputs afin que PHP les récupère sous la forme d'un tableau de tableau ainsi le traitement sera très facile

          input11 doit devenir input[0][0]
          input12 doit devenir input[0][1]

          etc ...

          donc sous la forme input[nr de ligne][nr de champ]

          Il est préférable bien que pas indispensable de commencer la numérotation des index à zéro

          Ex :

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          	  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html  xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> 
          <head> 
              <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
          <title>Test form</title>
          
          <style>
          *
          {
          	font-family : arial;
          	font-size : 12pt;
          }
          
          body
          {
          	margin : 10px;
          	padding : 10px;
          	border : 0px;
          
          }
          
          </style>
          </head>
          <body>
          
          <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
          	<table>
          		<tr>
          			<td>Ligne 0</td> 
          			<td><input type="text" name="input[0][0]" value="10"></td>
          			<td><input type="text" name="input[0][1]" value="100"></td>
          			<td><input type="text" name="input[0][2]" value="130"></td>
          			<td><input type="text" name="input[0][3]" value="150"></td>
          			<td><input type="text" name="input[0][4]" value="160"></td>
          			<td><input type="text" name="input[0][5]" value="110"></td>	
          		</tr>
          		
          		<tr>
          			<td>Ligne 1</td> 
          			<td><input type="text" name="input[1][0]" value="20"></td>
          			<td><input type="text" name="input[1][1]" value="25"></td>
          			<td><input type="text" name="input[1][2]" value="210"></td>
          			<td><input type="text" name="input[1][3]" value="250"></td>
          			<td><input type="text" name="input[1][4]" value="25"></td>
          			<td><input type="text" name="input[1][5]" value="2"></td>	
          		</tr>
          	</table>	
          	<input type="submit" onclick="Envoyer">
          </form>
          
          <?php
          
          
          if (isset($_POST["input"]))
          {
          	echo "<br />Traitement du tableau en PHP<br />";
          	$input = $_POST["input"];
          	echo "Le tableau comporte : ".count($input)." lignes<br />";
          	for ($i = 0; $i < count($input); $i++)
          	{
          		echo "Ligne ".$i."<br />";
          		$ligne=$input[$i];
          		for ($j = 0; $j < count($ligne); $j++)
          		{
          			echo "input[".$i."][".$j."]=".$ligne[$j]."<br />";
          		}	
          		echo "<br />";
          	}
          }
          
          ?>
          </body>
          </html>


          0