[AJAX] Impossible de joindre une page PHP
Bonjour tout le monde,
J'utilise ajax depuis de nombreux mois (+ de 18) et je n'ai jamais eu ce souci :
J'obtiens ce message d'erreur :
Citation:
uncaught exception: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame ::
http://Congres/AJAX/Enregistrer_guests.js :: anonymous :: line 8" data: no]
Line 20
quand je mets cette ligne :
Je suis obligé de le mettre car je n'arrive pas dans la page PHP :
Code:
xhr.open("POST","../AJAX/Enregistrer_guests.php",true);
L'alerte js située ici me donne une fenêtre vide :
Code:
1 2
| LeRetour = xhr.responseText;
alert(LeRetour); |
Voici le code js :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| function Enregistrer_guests(chaine_guests)
{
//alert(chaine_guests);
var xhr = getXhr();
xhr.onreadystatechange = function()
{
alert(xhr.status);
//alert(xhr.readyState);
if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
{
LeRetour = xhr.responseText;
alert(LeRetour);
}
}
//alert("ici");
xhr.open("POST","../AJAX/Enregistrer_guests.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send("chaine_guests="+chaine_guests);
} |
Voici mon code PHP :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <?php
echo 'ici';
include('../includes/connexion.php');
$tableau_guests = explode('#',$_POST['chaine_guests']);
for($i=0; $i < $tableau_guests.lenght; $i++)
{
$sql = "INSERT INTO guest (Complete_Name) VALUES('".$tableau_guests[$i]."')";
echo $sql;
//$query = mysql_query($sql);
}
?> |
Je pense que le path est incorrect mais j'ai testé avec AJAX/Enregistrer_guests.php et avec Enregistrer_guests.php mais sans succès.
Merci d'avance pour l'aide.
Complément d'information :
Je travail avec un onsubmit :
Code:
<form method="post" action="https://secure.ogone.com/ncol/test/orderstandard.asp" onsubmit="return verifier_data_guest();">
J'arrive donc dans une fonction que voici :
Code:
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
| function verifier_data_guest()
{
chaine_guests = new String();
//je teste le nombre de zone de texte (guest) présente dans la page.
var i = 1;
while(document.getElementById('zdt_firstname'+i)){
//je teste que ça contient bien quelque chose
if((document.getElementById('zdt_firstname'+i).value == '')||(document.getElementById('zdt_name'+i).value == ''))
{
alert("Please complete information for guest "+i);
return false;
}
else
{
chaine_guests+= document.getElementById('zdt_firstname'+i).value + ' ' + document.getElementById('zdt_name'+i).value+'#';
i++;
}
}
i = i -1;
Enregistrer_guests(chaine_guests);
return true;
} |
et j'appelle la fonction Enregistrer_guests(chaine_guests);
beegees