|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : juin 2006 Messages : 7 ![]() |
Bonjour,
Comme celui qui va me répondre (j’espère !!) le sait très bien, afin de ne pas confondre les guillemets qui servent à désigner une valeur littérale avec les guillemets qui se trouvent DANS la valeur littérale, on utilise des anti-slashs qu’il faut ajouter et supprimer dans les allés et retours du code. C’est comme ça qu’une chaîne telle que
se promène dans le code sous la forme
L’anti-slash doit, bien sûr, être enlevé avant d’afficher la chaîne. Seulement voilà, je me prends le chou avec le champ caché (<input type=hidden …>) qui semble ne pas prendre en considération le caractère d’échappement et tronque tout ce qui suit l’apostrophe. Pour bien montrer ce dont je parle, voici un modèle réduit (néanmoins opérationnel) du code sur lequel je travaille. Code :
Si quelqu’un a une idée, je suis preneur. Merci d'avance Godot |
||
|
|
00
|
|
|
#2 | |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
|
|
|
|
00
|
|
|
#3 | |
|
Invité régulier
![]() Inscription : juin 2006 Messages : 7 ![]() |
Bah non, ça ne va pas.
Citation:
Et même si je l'avais voulu, comment ça se fait que hidden ne tient pas compte des caractères d'échappement alors que les autres champs de formulaire le font? |
|
|
|
00
|
|
|
#4 | ||
|
Invité régulier
![]() Inscription : juin 2006 Messages : 7 ![]() |
Mouais, j'ai trouvé une solution, mais je ne la trouve pas très élégante. De plus, julp m'a donné l'impression qu'il y a un problème avec la logique de mon code.
J'en saurais peut être un peu plus au retour de mon voyage, dans quelques jours. En attendant, voici une solution provisoire. Code :
|
||
|
|
00
|
|
|
#5 | ||||
![]() ![]() Inscription : janvier 2003 Messages : 2 018 ![]() |
C'est normal car l'attribut value commence par un '
et que tu fais un echo de ton champ ce qui donnera en html <input type='hidden' value=' le texte avec des apostrophes échappées\' <= Value s'arretera donc dés qu'il trouvera un apostrophe , échappé ou non essaie : Code :
Code :
__________________
N1bus Modérateur Web / PHP Aucune demande technique ne sera traitée par MP . Merci PHP/GD : Génération d'un code-barre Code 39 FCKEditor : Modifier la largeur des listes déroulantes PHP/e-Commerce : Installation d'une solution de paiement en ligne SIPS-ATOS |
||||
|
|
00
|
|
|
#6 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Ça ne change véritablement rien au problème : lorsque que vous aurez une double quote, vos données ne passeront plus non plus ...
Si vous ne souhaitez pas altérer les autres caractères spéciaux du point de vue du "langage" HTML, j'imagine que vous pouvez procéder ainsi (pour injecter une valeur dans un champ de formulaire) : Code :
|
||
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : juin 2006 Messages : 7 ![]() |
Merci pour vos réponses. Je vais méditer ça.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com