Le spip_migre est toujours pas portable chez moi, pour les raisons déjà
discutées il arrache un peu fort dans le fichier inc_utils.php.
<troll>
Dans inc_utils.php il y a :
// Pour une redirection, la liste des arguments doit etre separee par "&"
// Pour du code XHTML, ca doit etre &
// Bravo au W3C qui n'a pas ete capable de nous eviter ca
// faute de separer proprement langage et meta-langage
Effectivement, ça fait des années que le W3C recommande d'utiliser un point
virgule au lieu de l'esperluette pour séparer les variables dans les URL : http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2
et que personne ne l'écoute.
C'est vrai qu'il y a eu une mauvaise habitude au départ et que maintenant le
monde est coincé. Mais je jetterais plutôt la pierre aux programmeurs en perl
des débuts du CGI qu'au W3C.
Concernant les formulaires envoyées par le client, ce sont les ingénieurs de
mozilla et d'IE qui contrôlent le caractère de séparation.
Concernant les requêtes que SPIP s'envoie à lui même, PHP supporte le
remplacement de séparateur d'arguments par un point-virgule, grâce à la
directive arg_separator.output du fichier php.ini. Il me semble difficile
de compter là dessus. C'est techniquement possible de renoncer aux variables
automatiques du PHP pour s'envoyer des URL séparées en ";" et parser les
arguments à la main avec explode[';', parse_url[query] ] . Il ne
m'appartient pas de faire ce choix.
Scuse, la fin de ton premier envoi pouvait laisser croire que tu rencontrais des pbs à cause de cette modif.
Ca n'avait rien a voir, et j'enterine sur le dépot.
// Bravo au W3C qui n'a pas ete capable de nous eviter ca
// faute de separer proprement langage et meta-langage
Effectivement, ça fait des années que le W3C recommande d'utiliser un point
virgule au lieu de l'esperluette pour séparer les variables dans les URL : Performance, Implementation, and Design Notes
et que personne ne l'écoute.
Bon alors il faut virer ce commentaire
de compter là dessus. C'est techniquement possible de renoncer aux variables
automatiques du PHP pour s'envoyer des URL séparées en ";" et parser les
arguments à la main avec explode[';', parse_url[query] ] . Il ne
m'appartient pas de faire ce choix.
Surtout, on a un filtre pour gérer ça proprement dans les URL, il suffit
qu'on l'applque proprement (je crois que c'est déjà le cas à 99%)
soit, mais ";" ou "&" la question de fond reste: rien, sur le plan théorique, ne legitime d'interdire "&".
Le W3C a mal défini son meta-langage, c'est un fait. D'ailleurs il a mis en chantier XMLSchema pour se rattraper, mais il a d'autres défauts.
C'est vrai qu'il y a eu une mauvaise habitude au départ et que maintenant le
monde est coincé. Mais je jetterais plutôt la pierre aux programmeurs en perl
des débuts du CGI qu'au W3C.
on trouve toujours pire que soi, <troll>il n'y a qu'à prendre Perl</
ce n'est pas une excuse.
Concernant les formulaires envoyées par le client, ce sont les ingénieurs de
mozilla et d'IE qui contrôlent le caractère de séparation.
Concernant les requêtes que SPIP s'envoie à lui même, PHP supporte le
remplacement de séparateur d'arguments par un point-virgule, grâce à la
directive arg_separator.output du fichier php.ini. Il me semble difficile
de compter là dessus. C'est techniquement possible de renoncer aux variables
automatiques du PHP pour s'envoyer des URL séparées en ";" et parser les
arguments à la main avec explode[';', parse_url[query] ] . Il ne
m'appartient pas de faire ce choix.
Si ca ne couvre pas toutes les requetes constuites par Spip, ce n'est pas la peine de compliquer le code.