Caracteres authorises pour les urls

WRInaute discret
Bonsoir,

Je me demande quelles sont les caracteres qui ne pose pas probleme pour l'url

cad:
http://www.toto.com/signé.php -> pas bon car le navigateur le transforme ...

http://www.toto.com/signe.php -> OK.

Ainsi tous les caracteres avec des accents, c'est pas bon.

La virgule, pas de pb, le tiret "-", idem.

Mais par exemple peut- on utiliser le ";", le "|" ....?

Quelq'un pourrait-il me donner la liste des caracteres qui ne posent pas pb.

Merci :wink:
 
WRInaute discret
Suis pas en star en anglais...

dans les RFC donne au dessus,

puis je mettre ca?:

reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
"$" | ","

ou

unreserved = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")" :?:

dans mes urls?
 
WRInaute occasionnel
Evidement cette RFC n'est pas traduite sur le suite de traduction des RFC : http://abcdrfc.free.fr/ ...

Bon la BNF (Grammaire) est présente en Apendice A de la RFC 2396.
Apres quelques minutes de lecture on comprend que les caractères possible sont :
(dans un chemin car pour les query string c'est encore autre chose ...)
- Les chiffres et lettres ( maj et min ),
- La ponctuation suivante : "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
- Les caractère échappés sous la forme %XX

Ceux là ":" | "@" | "&" | "=" | "+" | "$" | "," | "/", les réservés ont un sens particulier, ils peuvent être présents dans une URL mais pas n'importe comment. pour préciser un login, un port particulier, etc...

Mais comme le dit Monique pas la peine de faire compliqué, Echappe tous tes caractères non alpha numériques et tu n'auras aucun problème .

Mirgolth
 
WRInaute discret
Mirgolth a dit:
Evidement cette RFC n'est pas traduite sur le suite de traduction des RFC : http://abcdrfc.free.fr/ ...

Bon la BNF (Grammaire) est présente en Apendice A de la RFC 2396.
Apres quelques minutes de lecture on comprend que les caractères possible sont :
(dans un chemin car pour les query string c'est encore autre chose ...)
- Les chiffres et lettres ( maj et min ),
- La ponctuation suivante : "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
- Les caractère échappés sous la forme %XX

Ceux là ":" | "@" | "&" | "=" | "+" | "$" | "," | "/", les réservés ont un sens particulier, ils peuvent être présents dans une URL mais pas n'importe comment. pour préciser un login, un port particulier, etc...

Mais comme le dit Monique pas la peine de faire compliqué, Echappe tous tes caractères non alpha numériques et tu n'auras aucun problème .

Mirgolth

Ah, voila ce que je souhaitai, merci bcp Mirgolth pour tes precisions et en plus une url pour tous les rfc en francais! :wink:
 
WRInaute impliqué
Je me permets de remonter le sujet car j'effectuais une recherche sur les caractères autorisés.

J'utilise actuellement des caractères que Google n'aime pas. J'ai créé un album photo dynamique qui se base sur l'arborescence des répertoires et donc, dans l'url je passe des noms de répertoires en paramètres. Cela donne ça en gros :
http://perso.jediweb.net/photos/?galler ... +juin+2002

J'utilise avant la fonction urlencode() pour que ça soit commestible mais bon, il semblerait que ce ne soit pas suffisant. Y'aurait pas une parade à tout cela sans avoir à faire de modification majeure dans le code ?

Merci d'avance (en espérant avoir été assez explicite)


PS : j'ai également essayé avec rawurlencode/decode() mais dans tous les cas, j'me trouve de temps en temps avec un / dans l'url ...
 
WRInaute occasionnel
The Jedi a dit:
Merci d'avance (en espérant avoir été assez explicite)
J'ai un peu visité mais j'ai pas vu d'URL à problème... :oops:
Essaye de nous donner un page ou cela ne passe pas et le code qui l'a générée.

Mirgolth
 
WRInaute impliqué
OK merci ^^ j'attendrai son prochain passage car la dernière fois il ne s'était arrêté qu'à la racine de l'album.
 
Discussions similaires
Haut