lassad_haddaji
Messages postés141Date d'inscriptionmardi 24 avril 2007StatutMembreDernière intervention 6 avril 2012
-
22 août 2008 à 10:41
gagah1
Messages postés509Date d'inscriptionsamedi 28 juin 2003StatutMembreDernière intervention 3 août 2010
-
26 août 2008 à 10:30
bonjour,
cette fois j'espere que vous me repondre sérieusement et ne prend pas mal mais faute d'horthographe comme l'autre fois
bon le probleme que j'ai apropos de XMLHttpRequest, j'ai essaié de voir des tuto et jai lu le tuto de @nicomilville qui m'as aidé un peu avec leur message pour l'adapter mais le probleme reste le meme
//index.htm
<script language="javascript" type="text/javascript">
function getXhr(){
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr;
}
function go(){
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readyState 4 && xhr.status 200){
//eval(xhr.responseText);
results = xhr.eval(responseText.split(","));
document.getElementById('id_u).value =results[0];
document.getElementById('nom').value = results[2];
document.getElementById('prenom').value = results[1];
document.getElementById('adresse').value = results[5];
document.getElementById('ville').value =results[3];
document.getElementById('code_zip').value = results[4];
}else{alert("erreur");}
}
// Ici on va voir comment faire du post
xhr.open("POST","affsearchuser.php",true);
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
document.getElementById('mode').style.display = "block";
}
</script>
</head>
<form method="post">
</form>
//affsearchuser.php
<?php
include('config.php');
$search_id = $_POST[''];
$sql = "SELECT * FROM tb_user WHERE id='".$search_id."'";
$res = mysql_query($sql);
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 22 août 2008 à 20:18
Hello,
ce n'est pas parce que la requête (xhmhttp) n'a pas terminé qu'elle est en erreur...on ne gère pas les erreurs avec xmlhttp comme tu le fais là. Vire ton alert() déjà. Où met le avec un test sur le bon retour d'erreur xmlhttp (cf tes tutos).
lassad_haddaji
Messages postés141Date d'inscriptionmardi 24 avril 2007StatutMembreDernière intervention 6 avril 2012 23 août 2008 à 23:25
hi,
oui j'ai changé un peu le script mais n'a rien changé comme resultat deja me reste comme elle est.donc ce que je suis besoin reellement que un membre me corrige le script parce que me reste pas de temps pour le PFE, svp n'hesitez pas c'est tres urgent
gagah1
Messages postés509Date d'inscriptionsamedi 28 juin 2003StatutMembreDernière intervention 3 août 2010 24 août 2008 à 21:46
Salut,
------> results = xhr.eval(responseText.split(","));
change par:
results = eval(xhr.responseText.split(","));
et vire le teste sur le message d'alerte. Tu es en mode asynchrone. Pourquoi tu n'utilises pas JSON pour traiter un tableau en AJAX.
lassad_haddaji
Messages postés141Date d'inscriptionmardi 24 avril 2007StatutMembreDernière intervention 6 avril 2012 25 août 2008 à 21:02
salut,
merci de votre interrer tu es le seul ici qui est interessé, merci encore une autre fois,
je te dis une chose apropos la question dans le fichier php, j'ai fais un teste que quand on appuie sur la button pour afficher ne gere pas donc pour cela m'affiche undefined mais si je fixe la recherhce pour la requete et par exemple je prend numero ID=173 m'affiche dasn la chmps texte donc je pense qu'il ne traite pas le fichier php
Merci et j'espere que tu m'aide jusqu'a je trouverai la solution parce que je pense pas que je le trouverai tout seul
Merci
gagah1
Messages postés509Date d'inscriptionsamedi 28 juin 2003StatutMembreDernière intervention 3 août 2010 26 août 2008 à 10:30
L'erreur vient de traitement AJAX non pas par PHP, j'ai mis en rouge les instructions à réctifier:
//index.htm
<script language="javascript" type="text/javascript">
function getXhr(){
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr;
}
function go()
{
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readyState 4 && xhr.status 200)
{
results = xhr.responseText.split(/,/);
document.getElementById('id_u).value =results[0];
document.getElementById('nom').value = results[2];
document.getElementById('prenom').value = results[1];
document.getElementById('adresse').value = results[5];
document.getElementById('ville').value =results[3];
document.getElementById('code_zip').value = results[4];
}
}
// Ici on va voir comment faire du post
xhr.open("POST","affsearchuser.php",true);
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send('id_user=' + document.getElementById('id_user').value);
document.getElementById('mode').style.display = "block";
}
</script>
</head>
<form method="post">
</form>
//affsearchuser.php
<?php
include('config.php');
$search_id = $_POST['id_user'];
$sql = "SELECT id, nom, prenom, adresse, ville, zip FROM tb_user WHERE id='".$search_id."'";if(($res mysql_query($sql)) && ($rows mysql_fetch_assoc($res)))
echo $rows['id'].", ".$rows['nom'].", ".$rows['prenom'].", ".$rows['adresse'].", ".$rows['ville'].", ".$rows['zip'];
else
echo ' , , , , , '; // envoyé des resultats vides si la requete ne fonctionne pas