Bonjour,
J'ai un problème lors d'un appel Ajax avec prototype. Mon but est de remplir un champs input avec une valeur. Le problème est qu'un espace est ajouté au début du champs, ce qui perturbe donc l'exécution des requetes suivantes basées sur cette valeur.
Voici la requete lancée :
La fonction Request :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Request('default_client','dbname='+nom_base+'&action=SetDefaultClient&type_client='+type_client.value+'&debut='+this.value);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 function Request(id_element,parametres) { var url = './ajax/request.php'; var Requete = new Ajax.Request( url, { method: 'get', parameters: parametres, onSuccess: function(transport) {$(id_element).value = transport.responseText;} } ); }
La portion de PHP qui retourne la valeur :
A noter que mon trim ci-dessus ne sert à rien. $value ne contient aucun espace, retour chariot ou autre. C'est ensuite qu'il est ajouté, et c'est là que je ne comprends plus...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if(isset($_GET['truevalue']) AND $_GET['truevalue']==true) $value=$_GET['debut']; else $value=select_unique("SELECT CT_NUM FROM F_COMPTE WHERE CT_TYPE=? AND upper(CT_INTITULE) LIKE '".strtoupper($_GET['debut'])."%' ORDER BY CT_INTITULE",$dbname,$_GET['type_client']); $value=trim($value); echo $value;
Je ne vais pas vous faire un dessin mais le résultat est un champs input ou la valeur vaut : " 654" avec un espace en trop donc. Je précise que dans l'url que j'envoie par la suite à prototype (la requete ajax qui se base sur le résultat ci-dessus), il apparait clairement un "%20" au début du paramètre concerné
Merci à ceux qui m'aideront
Partager