Accueil > Forum > > > > AJAX - probleme envoi d'un POST
AJAX - probleme envoi d'un POST
mercredi 17 février 2010 à 11:52:04 |
AJAX - probleme envoi d'un POST

ju0123456789
|
Bonjour,
Je vais essayer d'etre précis dans ma demande sachant que je suis débutant en AJAX.
Je construis actuellement une page d'album photo que j'essaye déséspérément de mettre en AJAX. j'ai un Select qui sélectionne un album photo (sur la page "gestion_photos.php"), et les photos s'affichent en ajax, en dessous de chaque photo j'ai un lien "supprimer"
voici mon lien :
Code PHP : echo "<A href='#' onclick='supp(".$ID.");'>Supprimer</A>
Ma fonction Supp :
Code Javascript : function supp(Var1)
{
var xhr = GetXHR();
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4 && xhr.status == 200)
{
leselect = xhr.responseText;
document.getElementById('suppDIV').innerHTML = leselect;
}
}
url = "/html/requete-ajax.php";
xhr.open("POST",url,false);
alert(Var1);
xhr.send('idphoto=' + 'Var1');
}
Et c'est dans "requete-ajax.php" que j'ai tout mon traitement au niveau de la BDD, mais tout en haut de mon fichier je teste Code PHP : if( isset( $_POST['idphoto'] ) ) et il me renvoie toujours FALSE ! :'( snif
Alors que mon alert dans mon script PHP est toujours niquel.
Sans l'envoi de ce post je suis completement bloqué.
Comment faire svp ?
Merci
|
|
mercredi 17 février 2010 à 13:44:47 |
Re : AJAX - probleme envoi d'un POST

Vonscott
|
As tu essayé dans ton php
echo '<a href="#" onclick="supp('.$ID.');">Supprimer</a>';
à la place de :
echo "<A href='#' onclick='supp(".$ID.");'>Supprimer</A>
|
|
mercredi 17 février 2010 à 14:10:48 |
Re : AJAX - probleme envoi d'un POST

ju0123456789
|
Bonjour et merci de ta réponse.
Oui j'ai essayé, j'ai meme essayé
Code PHP : <A href='gestion_photos.php?id=".$ID."'>Supprimer</A>
Mais le $_POST['idphoto'] ne marche pas
en début de page "requete-ajax.php" j'ai mis
Code PHP : if (isset( $_POST['idphoto'] ))
{
echo "OK";
}
else
{
echo "NAN";
}
Et il me marque toujours "NAN"
au niveau de mon code javascript, on m'a conseillé de faire ma fonction 'supp' comme suivant :
Code Javascript : function supp(Var1)
{
var xhr = GetXHR();
url = "/html/requete-ajax.php";
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.open("POST",url,false);
alert(Var1);
xhr.send('idphoto=' + Var1);
}mais ça ne change rien. Je ne comprends pas
|
|
mercredi 17 février 2010 à 21:02:56 |
Re : AJAX - probleme envoi d'un POST

kohntark
|
Salut,
- Conserve le setRequestHeader()
- Passe ton false à true dans le xhr.open
.... ça devrait le faire.
Cordialement,
Kohntark -
|
|
jeudi 18 février 2010 à 09:22:58 |
Re : AJAX - probleme envoi d'un POST

ju0123456789
|
hello ! Non ça ne marche pas.
J'ai ma page, ou j'ai ma fonction 'Supp'
Code Javascript : function supp(Var1)
{
var xhr = GetXHR();
url = "/html/requete-ajax.php";
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.open("POST",url,true);
xhr.send('idphoto=' + Var1);
alert(Var1);
}code]
Et donc dans ma page "requete-ajax.php" j'ai juste mis en haut de page :
[code=php]if( isset( $_GET['idphoto'] ) && $_GET['idphoto'] != "" )
{
echo "OUAIIIIIIIIIIIIIIIIIIIIIIIIIIS";
}
else
{
echo "NAAAAAAAAAAAAAAAAAAAAAAAAAAN";
}
Mais il m'affiche toujours "NAAAAAAAAAAAAAAAAAAAAAAAAAAN"
J'ai remarqué qu'il y avait une ereur Javascript qui tombe sur la ligne du header. C'est peut être mon probleme moais je ne vois pas d'où ça peut venir.
Merci
|
|
jeudi 18 février 2010 à 10:03:45 |
Re : AJAX - probleme envoi d'un POST

kohntark
|
... pourtant chez moi si
Ce que je voulais dire c'est reprendre ta première fonction, pas la seconde qui dans l'état actuelle n'est pas prête de te retourner quelque chose.
Tu y ajoutes "xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');"
Tu passes ton false à true
Ton "alert(Var1);" tel qu'il est placé t'informe uniquement que ta fonction est exécutée, ce qui n'apporte pas grand chose.
Si tu veux savoir ce qu'il se passe pendant l'exécution de la requête tu peux ajouter un alert juste après function(){ :
Code Javascript : alert("Etat de la requête : "+xhr.readyState);
(cf google pour les correspondances)
Si tu n'as aucune alert postes ta fonction GetXHR() et dis nous quel navigateur tu utilises.
Il faut également que tu saches ce que tu veux :
- soit tu procèdes en GET, et tu récupères avec $_GET
- soit tu utilises POST, et tu récupères via $_POST
Dans ton dernier exemple tu mélanges les deux.
Cordialement,
Kohntark -
|
|
jeudi 18 février 2010 à 12:34:56 |
Re : AJAX - probleme envoi d'un POST

ju0123456789
|
Ok merci effectivement j'ai fait qq boulettes.
J'ai décidé de mettre tout en POST
J'ai donc modifié mon ficheir "requete-ajax" comem ceci :
Code PHP : if( isset( $_POST['idphoto'] ) && $_POST['idphoto'] != "" )
{
echo "OUAIIIIIIIIIIIIIIIIIIIIIIIIIIS";
}
else
{
echo "NAAAAAAAAAAAAAAAAAAAAAAAAAAN";
}
J'ai également remis ma fonction "supp" comme suivant :
Code Javascript : function supp(Var1)
{
var xhr = GetXHR();
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4 && xhr.status == 200)
{
leselect = xhr.responseText;
document.getElementById('suppDIV').innerHTML = leselect;
}
}
url = "/html/requete-ajax.php";
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.open("POST",url,false);
xhr.send('idphoto=' + Var1);
alert("Etat de la requête : " + xhr.readyState);
}
Mais j'ai apparemment un erreur JS au niveau de la ligne Code Javascript : xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
Et voici ma fonction GetXHR :
Code Javascript : function GetXHR()
{
var xhr = null;
if(window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else
{
alert("Votre navigateur ne supporte pas l\'ajax...");
xhr = false;
}
return xhr;
}
Il y a t-il quelque chose d'anormal ?
Merci bcp.
Ju'
|
|
jeudi 18 février 2010 à 20:53:21 |
Re : AJAX - probleme envoi d'un POST

kohntark
|
Il y a t-il quelque chose d'anormal ?
Oui :
Mais j'ai apparemment un erreur JS au niveau de la ligne
Quelle erreur ??
- pourquoi ne tiens tu pas compte de ça :
Tu passes ton false à true
Si tu veux savoir ce qu'il se passe pendant l'exécution de la requête tu peux ajouter un alert juste après function(){ :
Code Javascript :
alert("Etat de la requête : "+xhr.readyState);
(cf google pour les correspondances)
=> ton alert n'est pas placé au bon endroit et surtout tu ne dis pas ce que ça donne dans l'exécution de ton code (quels rapports d'états affichés) hors c'est le meilleur moyen de débugger.
Et puis :
url = "/html/requete-ajax.php";
=>
essaie de remplacer par 'url = "html/requete-ajax.php";' et assure toi que le chemin soit valide à partir de la page d'appel.
Cordialement,
Kohntark -
|
|
vendredi 19 février 2010 à 09:42:04 |
Re : AJAX - probleme envoi d'un POST

ju0123456789
|
L'erreur JS fournie par IE
"erreur non spécifiée Ligne 79"
cette ligne est la ligne de l'header de la fonction Supp()
J'ai passé à False car j'avais mal lu, il m'avait semblé lire qu'il fallait que je passe à False, désolé. J'ai corrigé, mais toujorus le même souci.
En ce qui concerne l'état de la requete, elle est à 1, donc ça doi pas être bon alors :(
Concernant le chemin de la page d'appel est bon, pour être sûr j'ai mis "../html/" au lieu de "/html/"
Je reviens vite fait sur cette histoire de "true" et "false", mon état de la requete devient 4 si je mets false, et reste à 1 sur je mets true. 4 c'est bon je crois, mais sur l'autre par je ne recoi visiblmement rien en POST.
Si vraiment tu ne vois pas mon probleme, ça m'embeterais mais j'ai quand meme trouvé une alternative en PHP. Pas en AJAX comme je l'aurais voulu mais bon... S'il n'y a que ça je prendrai :)
C'est quand meme chiant quand ça marche pas lol
|
|
vendredi 19 février 2010 à 23:04:14 |
Re : AJAX - probleme envoi d'un POST

kohntark
|
Pas en AJAX comme je l'aurais voulu mais bon... S'il n'y a que ça je prendrai :)
 tu ne vas pas te laisser faire par une petite requête ajax tout de même ?
Je te propose de reposter l'intégralité de ton code (celui réellement nécessaire) afin de repartir sur une base claire.
Je viens de faire un test avec IE8 => fonctionne sans pb (ainsi que FF 3.5.8)
Quelle version de IE te donne cette erreur ?
Concernant le mode asynchrone (true) et synchrone (false) je reste un peu perplexe.
Ton script tel qu'il est, et surtout en considérant ton but, gagnerait je pense à être en asynchrone.
Cordialement,
Kohntark -
|
|
Cette discussion est classée dans : code, php, post, ajax, xhr
Répondre à ce message
Sujets en rapport avec ce message
[AJAX/PHP] - echange les $POST ? [ par bazbazus ]
bonjour a tous J'ai un petit problème je veux récupérer des paramètres passés par POST via un objet XMLHttpRequest. mais pas les [b]envoyer[/b] les [b
Modifier une variable php sans passer par un fomulaire [ par mailliam ]
Tcho à tous! Je veux afficher une grille faite avec 100 images (10x10). J'aimerais que quand je clique sur la 1ère image ça envoie une variable php a
Formulaire avec Ajax PHP MySQL [ par vargas ]
Bonjour à tous je m'adresse à vous car je suis pris avec un grand problème, je sais qu'il y a beaucoup des post que parlent déjà de mon problème mais
problème avec récupération $_POST [ par Parisssi ]
bonjour voila ça 2 jours que je n'arrive pas à résoudre mon problème. J'ai le formulaire suivant et je n'arrive pas à récupérer le contenu de ma varia
problème de boucle for et d'organisation dans mon code php [ par msi079 ]
salut . je voudrais utiliser la boucle for dans mon code pour enregistrer les données (les préjudices). voici ce que je veux : une personnes peut avoi
$ is undefined problème ajax [ par suke94 ]
Bonjour à tous, J'ai un petit souci je rencontre cette erreur "$ is undefined". J'ai l'impression que mon fichier jquery.js n'est pas reconnus. Je vou
formulaire php [ par ainfographie ]
Bonjour à tous, je viens vers vous car je désespère. J'ai créé un formulaire de contact, pour mon site, j'aimerais recevoir les infos dans ma boîte ma
Problèmes listes déroulantes dynamiques avec php et ajax [ par maha1987 ]
Bonjour tout le monde, je veux afficher 3 listes liées dynamiquement ,mon problème c'est que la 1ère et la 2ème liste s'affichent mais la 3ème non, vo
Formulaires [ par jmp kjm ]
Bonjour, J'ai un problème pour correctement gérer le routage du visiteur vers la bonne application. Dans index.php j'ai : [code=php]if(!$_POST['ouv
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
XML ET PHPXML ET PHP par karouani
Cliquez pour lire la suite par karouani RE : GOOGLE MAPRE : GOOGLE MAP par inwebo
Cliquez pour lire la suite par inwebo
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|