Bonjour,

Mon problmème est le suivant.

J'ai un formulaire dont une partie est complétée par une fonction php qui affiche les résultats d'une requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
for($i = 0; $i < $num_result; $i++)
        {
          $row = mysql_fetch_array($resultat);
          echo "<tr height='5%'>
		  <td id='tdcontenu'><input type='text' name='ordreProd[$i]' id='ordreProd' value='$row[1]' size='4' onchange='verifNombre(this)'><input type='hidden' name='cleProd[$i]' 'id='cleProd' value='$row[0]'></td>
	             <td id='tdcontenu'>$row[2]</td>
	             <td id='tdcontenu'>$row[3]</td>
	             <td id='tdcontenu'><input type='text' name='requiredquantite[$i]' id='quantite' value=''  size='4' onchange='verifNombre(this)'></td>
	            </tr>";
        }
Via une fonction AJAX, je désire enregistrer ces résultats qui auront préalablement étés complétés :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function enregInv()
 {
  xhrEnrInv = getXhr();
  xhrEnrInv.onreadystatechange = function()
   {
    if(xhrEnrInv.readyState == 4 && xhrEnrInv.status == 200)
     {
      document.getElementById('erreur').innerHTML = xhrEnrInv.responseText;
     }
   }
  xhrEnrInv.open("POST",'../transferts/ajaxEnregInv.php',true);
  xhrEnrInv.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
  leJour = document.getElementById('jour');
  jour = leJour.options[leJour.selectedIndex].value;
  leMois = document.getElementById('mois');
  mois = leMois.options[leMois.selectedIndex].value;
  lannee = document.getElementById('annee');
  annee = lannee.options[lannee.selectedIndex].value;
 
  var cleProd = new Array();
  var ordreProd = new Array();
  var quantite = new Array();
 
  for(cpt = 1; cpt <=10; cpt++)
   {
    cleProd[cpt] = document.getElementsByName('cleProd[cpt]').value;
    ordreProd[cpt] = document.getElementsByName('ordreProd[cpt]').value;
    quantite[cpt] = document.getElementsByName('quantite[cpt]').value;
   }
 
  xhrEnrInv.send("jour="+jour+"&mois="+mois+"&annee="+annee+"&cleProd="+cleProd+"&ordreProd="+ordreProd+"&quantite="+quantite);
 }
Cette fonction envoie donc à un script php 6 variables dont 3 tableaux.

Ce sont notemment ces 3 tableaux qui me posent problème lors du traitement : je ne parviens pas à traiter leur contenu. Si, dans mon script php, j'effectue :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
$cleProd = $_POST['cleProd'];
 $ordreProd = $_POST['ordreProd'];
 $quantite = $_POST['quantite'];
echo $cleProd[1] . $ordreProd[1] . $quantite[1];
ça m'affiche 3 virgules.

Si je fais un echo d'une des variables POST, ça m'indique objet HTMLCOLLECTION.

Malgré mes recherches, je ne vois pas comment traiter ce type d'objet.

Quelqu'un pourrait-il m'aider?

Merci d'avance.

Christophe