|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : octobre 2006 Messages : 34 ![]() |
Bonjour,
J'ai créé un formulaire qui passe en champ caché une variable qui contient un "é". Cette variable identifie un utilisateur qui est inscrit dans une BDD, donc, on ne peut pas contourner le problème en l'enlevant... Cette variable suit donc page après page, mais à un moment, je me rend compte que le "é" s'est tranformé en "%E9" je crois bien. Total, mon url devient faux et patatras... Comme remédié à ce problème, sachant que j'ai essayé urlencode(), urldecode()... Merci à vous Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Déjà, il n'est pas bon d'avoir des caractères spéciaux dans du code, cela risque à un moment ou un autre de poser des PB.....
Pour passer une chaine de caractères (quelqu'ils soient, d'ailleurs : les espaces c'est pas bon non plus !!!) dans l'URL (donc méthode GET) il faut absolumeznt que tu utilises la fonction url_encode et url_decode, qui te permettent de transformer ce que tu veux pour que ca passe dans l'URL sans poser de PB. Au moment ou tu as besoin de la "forme claire", tu fais simplement un url_decode, et c'est bon (notamment pour l'affichage....) S'agissant des caractères spéciaux et de l'affichage HTML, je te conseil l'utilisationde htmlentities ou htmlspecialchars qui te permettent de changer automatiquement tout caractère spécial en sont équivalent HTML (ex : é = é Evite absolument les caratères spéciaux, surtout si tu as des traitments interne dépendant d'une chaine !!!! PS : tu peux aussi utiliser utf8_encode si tu veux...
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : octobre 2006 Messages : 34 ![]() |
Vraiment, je n'y arrive pas...
Je pense que je dois mal utiliser la fonction urlencode(). Selon toi, comment me faut il l'utiliser, c'est à dire où dois je l'utiliser? Car quand je clique sur le boutton 'retour menu' (dont on voit le code sur mon post précédent), l'url (visible dans la barre d'adresse) est nickel... |
|
|
00
|
|
|
#4 | ||||||
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Je te conseil déjà de prendre cette habitude :
Code :
Code :
Code :
Cette méthode est si possible à utiliser dans toute chaine d'URL composé par des éléments en GET (SURTOUT si il y a des caractères spéciaux... Perso, moi je les évites dans mes éléments GET, ce qui me permet de ne pas utiliser l'URLencode
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
||||||
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : octobre 2006 Messages : 34 ![]() |
OK, j'y penserai, tu as raison..
Le problème, c'est que ce n'est pas sur cette ligne de code que ça bogue. Je dirais même qu'elle fonctionne bien, même avec les accents C'est en fait quand je clique sur le boutton "enregistrer", c'est à dire quand je fait le submit de mon formulaire. EN fait, ce sont les vatriable "who" et "can" de mes <input type='text'....> qui me posent problème |
|
|
00
|
|
|
#6 | ||
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Il manque 2 point virgules ici :
Code :
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
||
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : octobre 2006 Messages : 34 ![]() |
Bon, je vais réfléchir à tout ça, puis je te tiens au courant.
Au fait, encore une question, les SESSIONS, ça marche peut importe la configuration du navigateur, contrairement aux cookies ? Merci pour ton aide. |
|
|
00
|
|
|
#8 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Les SESSIONS sont par défaut stockés sur le serveur, donc oui c'est indépendant du navigateur (il ne faut pas l'utiliser pour n'importe quoi non plus....) Mais pour plus d'infos------>Ma signature te fourniras ce que tu veux !!!!
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#9 | |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
|
|
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : octobre 2006 Messages : 34 ![]() |
Merci beaucoup.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com