8795 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Alors voila, j'ai un problème un peu complexe que je n'arrive pas à résoudre après des heures infructueuse sur le web.

J'ai un formulaire avec un bouton AJAX qui m'ajoute ou supprime un input text en fonction de mes besoin:

formulaire:
<script type="text/javascript" language="javascript">
var counter = 0;
 
function moreFields()
{
 counter++;
 var newFields = document.getElementById('readroot').cloneNode(true);
 newFields.id = '';
 newFields.style.display = 'block';
 var newField = newFields.childNodes;
 for (var i=0;i<newField.length;i++)
 {
  var theName = newField[i].name
  if (theName)
   newField[i].name = theName + counter;
 }
 var insertHere = document.getElementById('writeroot');
 insertHere.parentNode.insertBefore(newFields,insertHere);
}
 
window.onload = moreFields;</script>

<form method="post" id="nouveau" action="">
<img src="includes/skins/aqua/images/add.gif" style="height:15px; cursor:pointer; float:right; padding:0 0 5px 0"onClick="moreFields()">
          
       <div style="clear:both"></div>
<div id="readroot" style="display: ">
      quantit&eacute;s:
      <input type="text" 
  		name="quantite" 
                id="quantite" 
        
        size="32" />
      r&eacute;f&eacute;rence:
      <input type="text" 
 		name="reference" 
                id="reference" 
                size="32" />
     <img src="includes/skins/aqua/images/delete.gif" onClick="this.parentNode.parentNode.removeChild(this.parentNode);">
</div><span id="writeroot"></span> </form>


et voici ma requête mysql:
$nbre = count($_POST['quantite']);
for($i=1;$i<$nbre+1;$i++) { 
$sql_colis = 'INSERT INTO `dakine`.`colis` (`id`, `quantite`, `ref_colis`, `ref_palette`, `client`) VALUES (NULL, \''.$_POST['quantite']['$i'].'\', \''.$_POST['reference'].'\', \'1\', \''.$_POST['client'].'\');';
$colis = mysql_query($sql_colis, $dakine) or die(mysql_error()); }

[/i][/i]
Mon problème, l'inscription se fait bien dans mysql mais les champs restent désespérément vide Smiley decu

Quelqu'un verrait t'il ce que je ne vois pas?

merci de votre aide
Modifié par Sp4tz (16 Jan 2009 - 13:40)
dans tes input il faut mettre un attribut "value" avec pour valeur ce que tu sauvegarde en base de donnée.
En fait je pense que mon probleme vient de mon formulaire:

Quand on as ce genre:

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

et qu'on l'envois sa nous retourne:

valeur[1] =...
valeur[2] =...
valeur[3] =...
valeur[4] =...

non?

donc comment récupérer le tout pour que pour chaque [] ça m'inscrit un enregistrement?
Il te manque effectivement je pense la partie value :

<input type="text" name="nom de ta valeur" value="contenu saisi de ta valeur" />