supers03
Messages postés106Date d'inscriptionmardi 6 janvier 2004StatutMembreDernière intervention 1 décembre 2008
-
18 janv. 2008 à 09:41
DieMaster
Messages postés3Date d'inscriptionvendredi 8 octobre 2004StatutMembreDernière intervention11 février 2008
-
11 févr. 2008 à 17:39
Bonjour,
Lorsque j'envoi des données via ajax et la méthode POST, le caractère '+' n'est pas transmis, il est remplacé par un espace. J'imagine que c'est un problème d'encodage, mais je n'arrive pas à trouver la solution.
Pour info j'utilise :
setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
(j'ai copié/collé cette ligne sur un exemple d'ajax trouvé sur le net, donc si je doit la changer il n'y a pas de problème)
et pour le moment je n'ai pas défini d'header dans le script php qui reçoit.
Quelqu'un aurai un élément de réponse qui pourai me permettre d'avancer ?
merci d'avance,
Sylvain
supers03
Messages postés106Date d'inscriptionmardi 6 janvier 2004StatutMembreDernière intervention 1 décembre 2008 18 janv. 2008 à 16:42
Merci pour la réponse
C'est pas très pratique tout ça, y'aurai-t-il une/des fonctions qui encore ça directement ? bon toute façon je vais remplacer ça à la main c'est pas long à écrire.
supers03
Messages postés106Date d'inscriptionmardi 6 janvier 2004StatutMembreDernière intervention 1 décembre 2008 18 janv. 2008 à 16:53
Après vérification, le problème n'est pas là. En effet, les caractères tel que "?", "%" marchent très bien. par contre :
"+" donne " "
"?" donne "%u20AC"
Je sais pas, mais y'aurai pas moyen de coder la chaine de caractère en UTF8 par exemple, l'envoyer et decoder deriere ? parce que là c'est bizarre de pas pouvoir utiliser ce genre de symbole. Parce que moi j'ai besoin de tout ces symbole, je peu m'amuser à faire mon propre codage mais je vois pas pourquoi ça n'existerai pas, je suis surement pas le seul à vouloir utiliser l'ajax avec un "+" quand même
Vous n’avez pas trouvé la réponse que vous recherchez ?
supers03
Messages postés106Date d'inscriptionmardi 6 janvier 2004StatutMembreDernière intervention 1 décembre 2008 19 janv. 2008 à 11:42
nicky :
-j'envoi "+", et coté PHP je recupere le POST est c'est un espace " "
-j'envoi "%2B", et coté PHP je recupere "%2B"
... donc je veu bien que ça n'existe pas mais ça doit convertir tout seul... du coup je comprend plus rien
petole : excellente comme fonction, j'encode, j'envoi, le PHP garde ça en %2B je decode dans la fonction de retour en javascript
nickydaquick
Messages postés416Date d'inscriptionvendredi 31 janvier 2003StatutMembreDernière intervention19 décembre 20133 19 janv. 2008 à 19:32
Salut,
je doute que encodeURIComponent() fonctionne correctement avec internet explorer (meme Opera). A force de chercher un moyen trop facile tu risques de t'envenimer l'existence. Mais du courage le frere.
je suis heureux de faire partie d'une grande famille ...!
nickydaquick
Messages postés416Date d'inscriptionvendredi 31 janvier 2003StatutMembreDernière intervention19 décembre 20133 19 janv. 2008 à 19:45
Salut,
voici les caracteres non pris en charge par : encodeURIComponent() le tilde = ~
le point d'exclamation = !
le signe de multiplication = *
la parenthese ouvrante = (
la parenthese fermante = )
l'apostrophe = ' (single quote)
en ce qui concerne l'apostrophe et le tilde, bon courage.
le reste est OK.
je suis heureux de faire partie d'une grande famille ...!