Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
933 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Urlencoding et encodages de caractères

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Urlencoding et encodages de caractères

n°1046700
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 22:46:54  profilanswer
 

[:papatte]
 
bon, j'avoue, je suis pas doué avec les encodages de caractères... mon joli plugin Winamp qui met à jour la signature serait presque parfait s'il n'avait pas un petit bug : il n'affiche pas le caractère "&".
 
j'ai donc urlencodé la signature, et là ça marche. sauf que maintenant, ce sont les accents qui ne passent plus, comme vous pouvez le voir sur le NP de ma signature !
 
donc bon, ça commence à me ... *CENSURE*
 
avez vous une petite idée de quoi faire comment pour afficher correctement ce bouzin ?
 
le code qui génère et urlencode la signature (C++ .NET)

Code :
  1. theSignature = (thePrefs->genSignature)->Replace(S"{NP}",theTitre);
  2. theSignature = HttpUtility::UrlEncode(theSignature);


 
le code qui affiche la signature dans le forum (theSignature est concaténée dans la chaine theParams) :

Code :
  1. Byte data[] = Encoding::GetEncoding(S"iso-8859-1" )->GetBytes(theParams);
  2. theClient->Headers->Add(S"Cookie",cookie);
  3. theClient->Headers->Add(S"Content-Type", S"application/x-www-form-urlencoded" );
  4. try
  5. {
  6.    reponse = theClient->UploadData(urlForum, "POST", data);
  7. }
  8. catch (WebException *e)
  9. {
  10.    theTimer->Stop();
  11.    MessageBox::Show(e->Message, S"HFR Signature update plugin", MessageBoxButtons::OK, MessageBoxIcon::Error);
  12. }


 
edit: et le 1er qui se fout de ma gueule avec Roméo et Juliette se prend un TT [:pingouino]


Message édité par Harkonnen le 13-04-2005 à 22:59:19

---------------
J'ai un string dans l'array (Paris Hilton)
mood
Publicité
Posté le 13-04-2005 à 22:46:54  profilanswer
 

n°1046720
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 22:58:13  profilanswer
 

Quand tu dis que & ne passait pas, c'est à dire ? Il n'était pas affiché ? Quelle était la forme urlencodée ?


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046722
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:00:38  profilanswer
 

Il n'était pas affiché :/
 
edit: et ce qui vient après ne l'est pas non plus


Message édité par Harkonnen le 13-04-2005 à 23:01:11

---------------
J'ai un string dans l'array (Paris Hilton)
n°1046725
antp
Super Administrateur
Champion des excuses bidons
Posté le 13-04-2005 à 23:01:53  profilanswer
 

On avait de l'UTF-8 il y a quelques minutes (à la place de l'iso-8859-1 ou du windows-1252). Là l'accent est revenu mais le & est de nouveau parti :o
 
Edit : retour de l'UTF-8


Message édité par antp le 13-04-2005 à 23:02:08

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°1046728
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:04:34  profilanswer
 

antp a écrit :

On avait de l'UTF-8 il y a quelques minutes (à la place de l'iso-8859-1 ou du windows-1252). Là l'accent est revenu mais le & est de nouveau parti :o
 
Edit : retour de l'UTF-8


oui, j'ai fait un test rapido avec une vieille version pour voir si le "&" n'était effectivement pas affiché
on avait de l'UTF-8 ? comment se fait-ce, vu que j'encode en iso-8859-1 (cf code) :??:


---------------
J'ai un string dans l'array (Paris Hilton)
n°1046730
antp
Super Administrateur
Champion des excuses bidons
Posté le 13-04-2005 à 23:06:06  profilanswer
 

Au pif, theSignature est en UTF-8 et il le traite comme de l'ANSI/iso-8859-1 ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°1046731
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:06:54  profilanswer
 

Harkonnen a écrit :

Il n'était pas affiché :/
 
edit: et ce qui vient après ne l'est pas non plus


Non mais la forme urlencodée ? Si tu fais une capture avec ethereal il y avait bien %26 à la place de & ?


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046735
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:13:38  profilanswer
 

Bon je viens de regarder avec ethereal, à partir du moment où il y a un & la chaine n'est carrément pas urlencodée [:figti]
 
Edit :

Citation :

&signature=%5Burl%3Dhttp%3A%2F%2Fincongru.webdynamit.net%2F%5D%5B%23ee2211%5D+Incongru+%3A+une+FAQ+sur+les+Standards+du+Web%5B%2F%23ee2211%5D%5B%2Furl%5D+-+NP+%3A+Yann Tiersen & Les T.tes Raides - Ginette


Message édité par gm_superstar le 13-04-2005 à 23:17:15

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046738
simogeo
j'ai jamais tué de chats, ...
Posté le 13-04-2005 à 23:15:27  profilanswer
 

antp a écrit :

Au pif, theSignature est en UTF-8 et il le traite comme de l'ANSI/iso-8859-1 ?


 
+10 000 (enfin pour les accents c'est sur ..  
(pour le & .. doit forcement y'avoir une solution )

n°1046739
simogeo
j'ai jamais tué de chats, ...
Posté le 13-04-2005 à 23:17:13  profilanswer
 

gm_superstar a écrit :

Bon je viens de regarder avec ethereal, à partir du moment où il y a un & la chaine n'est carrément pas urlencodée [:figti]


 
le plugin pourrait poster le NP en base64 .... [:newidk]  
 
et harko pourrait créer un client qui le décode pour que chaque forumeur en profite [:moule_bite]

mood
Publicité
Posté le 13-04-2005 à 23:17:13  profilanswer
 

n°1046758
the real m​oins moins
Posté le 13-04-2005 à 23:29:00  profilanswer
 

gm_superstar a écrit :

Bon je viens de regarder avec ethereal, à partir du moment où il y a un & la chaine n'est carrément pas urlencodée [:figti]


quand on poste depuis hfr ou depuis le plugin ?


Message édité par the real moins moins le 13-04-2005 à 23:29:17

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1046765
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:32:47  profilanswer
 

gm_superstar a écrit :

Non mais la forme urlencodée ? Si tu fais une capture avec ethereal il y avait bien %26 à la place de & ?


voici la capture ethereal de la signature avec le & (sur ma version de dev du plugin, donc celle qui urlencode la signature) :

Citation :


NP%3a+Rom%c3%a9o+%26+Juliette+-+Les+rois+du+monde



---------------
J'ai un string dans l'array (Paris Hilton)
n°1046766
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:33:16  profilanswer
 

the real moins moins a écrit :

quand on poste depuis hfr ou depuis le plugin ?


Non depuis le plugin


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046771
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:33:50  profilanswer
 

gm_superstar a écrit :

Bon je viens de regarder avec ethereal, à partir du moment où il y a un & la chaine n'est carrément pas urlencodée [:figti]
 
Edit :

Citation :

&signature=%5Burl%3Dhttp%3A%2F%2Fincongru.webdynamit.net%2F%5D%5B%23ee2211%5D+Incongru+%3A+une+FAQ+sur+les+Standards+du+Web%5B%2F%23ee2211%5D%5B%2Furl%5D+-+NP+%3A+Yann Tiersen & Les T.tes Raides - Ginette



 
normal, sur la version que tu utilises, la signature n'était jamais urlencodée (mes connaissances nulles en web ne me permettaient pas d'imaginer que le & poserait problème) :spamafote:


---------------
J'ai un string dans l'array (Paris Hilton)
n°1046772
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:33:56  profilanswer
 

Harkonnen a écrit :

voici la capture ethereal de la signature avec le & (sur ma version de dev du plugin, donc celle qui urlencode la signature) :

Citation :


NP%3a+Rom%c3%a9o+%26+Juliette+-+Les+rois+du+monde



Ah bah ça marche déjà mieux que la version que j'ai [:joce]
 
Edit :

Harkonnen a écrit :

normal, sur la version que tu utilises, la signature n'était jamais urlencodée


Ah ok [:fear]


Message édité par gm_superstar le 13-04-2005 à 23:34:39

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046777
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:35:52  profilanswer
 

gm_superstar a écrit :

Ah bah ça marche déjà mieux que la version que j'ai [:joce]


oui, mais pourquoi il m'urlencode aussi les accents alors :??:


---------------
J'ai un string dans l'array (Paris Hilton)
n°1046778
antp
Super Administrateur
Champion des excuses bidons
Posté le 13-04-2005 à 23:35:52  profilanswer
 

Harkonnen a écrit :

voici la capture ethereal de la signature avec le & (sur ma version de dev du plugin, donc celle qui urlencode la signature) :

Citation :


NP%3a+Rom%c3%a9o+%26+Juliette+-+Les+rois+du+monde



 
Ça c'est de l'UTF-8 URL-encodé :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°1046779
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:35:53  profilanswer
 

Ben le truc c'est que le serveur doit considérer le %26 comme un vrai & et donc comme un délimiteur de variables...
 
Edit: ah en fait non %26 c'est la version qui passe.


Message édité par gm_superstar le 13-04-2005 à 23:45:10

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046781
antp
Super Administrateur
Champion des excuses bidons
Posté le 13-04-2005 à 23:36:17  profilanswer
 

Harkonnen a écrit :

oui, mais pourquoi il m'urlencode aussi les accents alors :??:


 
Parce que théoriquement ils doivent l'être aussi :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°1046783
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:36:26  profilanswer
 

antp a écrit :

Ça c'est de l'UTF-8 URL-encodé :D


 [:atog]  [:psychokwak]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1046785
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:36:47  profilanswer
 

Harkonnen a écrit :

oui, mais pourquoi il m'urlencode aussi les accents alors :??:


l'urlencodage ça code tout ce qui n'est pas des caractères alphanumériques + qq caractères


Message édité par gm_superstar le 13-04-2005 à 23:37:35

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1046802
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-04-2005 à 23:41:55  profilanswer
 

gm_superstar a écrit :

Ben le truc c'est que le serveur doit considérer le %26 comme un vrai & et donc comme un délimiteur de variables...


 

antp a écrit :

Parce que théoriquement ils doivent l'être aussi :o


 

gm_superstar a écrit :

l'urlencodage ça code tout ce qui n'est pas des caractères alphanumériques + qq caractères


 
ok, ça commence à venir...
- au départ, theSignature n'est pas encodée (donc, elle est surement en UTF-16, l'encodage par défaut de .NET)
- je l'urlencode -> les accents sont également urlencodés
- je la concatène avec les autres paramètres
- je convertis le tout en iso-8859-1. ceci est sans effet sur la signature, puisqu'elle est déjà urlencodée.
 
donc, ce qui me reste à faire, est de convertir la signature en iso-8859-1 AVANT de l'urlencoder !
 
j'ai bon ? [:pingouino]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1046803
gm_superst​ar
Appelez-moi Super
Posté le 13-04-2005 à 23:43:07  profilanswer
 

Tu peux balancer un dump ethereal de la version avec l'unicode urlencodé ?
J'ai rien dit.
 
Oui tu as bon.


Message édité par gm_superstar le 13-04-2005 à 23:44:17

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Urlencoding et encodages de caractères

 

Sujets relatifs
probleme de caracteres ASCIILecture de caractères
Problème requête : Chaines de caractèrescaractères illégaux ?
PHP : vérifier si des caractères sont alphanumériques[java]Pb de caracteres
taritement chaîne de caractères sous accessChaîne de caractères - Obtenir la longueur en points
Caractères speciauxUn regex qui tient compte des caractères d'échappement
Plus de sujets relatifs à : Urlencoding et encodages de caractères


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR