Bonjour,
Lors de l'appel d'une page PHP via XMLHttpRequest, j'ai besoin de faire une redirection vers une page qui va envoyer des requêtes à une BDD via la fonction header(Location: url) ...
Mais cette solution ne fonctionne que sur Firefox mais pas sur IE ni sur Safari. Ces derniers chargent bien la page PHP mais ne tiennent pas compte du header....
J'ai essayé de faire une redirection JS via window.location.href d'après la valeur de responseText mais cette solution ne me convient pas du tout. Il faut absolument que je trouve un moyen de rediriger en php.
Je vous mets ci-dessous une ébauche de mon code :
index.php
Un bouton valide le formulaire en appelant la fonction JS ajax qui transmet les infos saisies au fichier post.php que voici :
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 function getXMLHttpRequest() { var xhr = null; if (window.XMLHttpRequest || window.ActiveXObject) { if (window.ActiveXObject) { try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } } else { xhr = new XMLHttpRequest(); } } else { alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest..."); return null; } return xhr; } function ajax() { var xhr = getXMLHttpRequest(); var temperature = document.formulaire.temperature.value; var ventilation = document.formulaire.ventilation.value; xhr.open("GET", "post.php?temperature="+temperature+"&ventilation="+ventilation, false); xhr.send(null); return xhr.responseText; } }
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php $temperature=$_GET['temperature']; $ventilation=$_GET['ventilation']; $commande=$temperature.$ventilation; header("Location: http://192.168.x.x/send.htm?remote=daikin&command=$commande"); ?>
Avez-vous une idée ? Merci
Partager