bonjours, j'ai un souci de passage de variable entre javascript et php par l'intermediare d'un XMLHttpRequest();
je m'explique : je souhaite passer une variable javascript de type : ma variable
1 2 3 4 5 6 7 8
| <?php
echo'<a href="#" onMouseOver='."javascript:go('mavariable');".' />corect</a>';
echo'<a href="#" onMouseOver='."javascript:go('ma variable');".' />erreur</a>';
echo'<a href="#" onMouseOver='."javascript:go('ma variable');".'/>corect</a>';
?> |
ayant besoin de passer une variable avec espace je choisi la troisieme solution.
c la que tout se complique, la fonction go me sert a passer cette variable dans un script php avec l'objet XMLHttpRequest(); par methode post avec pour nom par exemple cherche.
dans ce script je verifie la valeur de la variable
1 2 3 4 5 6 7 8 9 10 11 12
|
<?php
if (isset ($_POST['cherche'])&&$_POST['cherche']=="ma variable")
echo $_POST['cherche'];//n'est pas vrai
else if (isset ($_POST['cherche'])&&$_POST['cherche']=="ma variable")
echo $_POST['cherche'];//n'est pas vrai non plus
?> |
il me semble que cela vient de l'encodage des valeurs du post par XMLHttpRequest(); puisque cet objet demande de préciser ceci lors de l'envoi du post :
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
de ce fait je voulais savoir si quelqu'un avait connaisance de l'écriture d'un espace qui soit interpretable et par javascript et par php dans l'envoi d'un post avec XMLHttpRequest();
merci d'avance
Partager