Bonjour,
Je teste une fonction afin de l'incorporer sur un api téléphonique web.
Le but de mon exercice :
Envoyer des données JS vers php afin qu'il envoie une requete dans une bdd.
Pour l'instant je fais au plus simple la page php contient seulement ma requete entièrement renseigné la main pour la bdd.
Voici le script js :
Le code dans php :
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 <script> var xhr_object = new XMLHttpRequest(); xhr_object.open("POST", "rq_bdd_php", true); xhr_object.addEventListener('readystatechange', function() { // On gère ici une requête asynchrone if (xhr_object.readyState === XMLHttpRequest.DONE && xhr_object.status === 200) { // Si le fichier est chargé sans erreur document.getElementById('fileContent').innerHTML = '<span>' + xhr_object.responseText + '</span>'; // On l'affiche ! } else if (xhr_object.readyState === XMLHttpRequest.DONE && xhr_object.status != 200) { // En cas d'erreur ! alert('Une erreur est survenue !\n\nCode :' + xhr_object.status + '\nTexte : ' + xhr_object.statusText); } }); xhr_object.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr_object.send(null); </script>
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <?php include("BD.class.php"); $bd=BD::getInstance(); $query = $bd->execRequete("update bdd.famille set libelle = 'Sole' where idfamille ='4'"); ?>
L'erreur capturée me renvoie :
Si je comprend bien, ma page php ne se charge pas, je ne comprends pas pourquoi.Code : 404
text : not found
Si j'attaque ma page manuellement (site\rq_bdd.php)
ma bdd se met bien à jour.
J'ai testé ce code js juste avant pour découvrir le XMLHttpRequest :
Et cela fonctionne, ce qui me laisse croire que l'objet XMLHttpRequest() en lui même fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <script> var xhr_object = new XMLHttpRequest(); xhr_object.open("GET", location.href, false); xhr_object.send(null); if (xhr_object.readyState == 4) alert("Requête effectuée !"); </script>
J'ai cherché des réponses en suivant des explications sur XMLHttpRequest, mais je ne comprend pas mon problème...
Pour info je travaille sur serveur php5.
Partager