Commmint Posté 2 Juin 2005 Posté 2 Juin 2005 Bonjour à tous, Dans ma croisade pour rendre mon site web standard, le validateur m'a débouté pour des URLs intégrant des paramètres pourtant simples : Line 49, column 52: cannot generate system identifier for general entity "display" ...mint3/annuaire_browse.php?mode=top10&display=1">Passer en affichage liste</a> Il prend le symbole & de l'URL pour le début d'une entité et du coup ne trouve jamais le ; Comment faire je pédale complètement. Les href de mes liens sont construits grâce à un $_SERVER['REQUEST_URI'] concaténée avec les paramètres supplémentaires en PHP. Merci à tous pour vos réponses ps: je précise qu'avant ça, mon doc est validé XHTML transitionnel.
Dan Posté 2 Juin 2005 Posté 2 Juin 2005 C'est assez simple, il suffit de rajouter un petit bout de code dans tes scripts php: ini_set('arg_separator.output', '&'); Cela permettra aux URLs générées automatiquement (comme celles avec un identifiant de session) d'avoir & au lieu de & . Assures-toi que tu ne crées pas toi-même des mauvais liens dans tes scripts.
Commmint Posté 2 Juin 2005 Auteur Posté 2 Juin 2005 Merci Dan j'ai inséré la fonction en haut de page, mais mes URLs ne sont toujours pas encodées. pour info, voilà comment sont générées mes URL en PHP (attention les yeux) $visual .= '<a href="'.$_SERVER['REQUEST_URI'].'&id='.$id.'¬e='.$i.'" title="Attribuer la note '.$i.'"><img src="images/point_vide.gif" alt="commmint note slot"/></a>'; Je n'y comprends rien
Dan Posté 2 Juin 2005 Posté 2 Juin 2005 Salut, C'est ce que je craignais, elles sont générées dans le code. Remplaces ton bloc par $visual .= '<a href="'.$_SERVER['REQUEST_URI'].'&id='.$id.'¬e='.$i.'" title="Attribuer la note '.$i.'"><img src="images/point_vide.gif" alt="commmint note slot"/></a>'; J'ai remplacé les 2 occurences de & par & Dan PS: tu dois avoir d'autres endroits dans le code php. Il faut que tu remplaces tous les & des URLs par & Attention à la recherche/remplacement global, le & se trouva ailleurs aussi
Commmint Posté 2 Juin 2005 Auteur Posté 2 Juin 2005 Merci Dan, Je n'en ai pas tant que ça. je vais essayer aussi avec des htmlentities pour encoder automatiquement les chaines qui peuvent l'être en sortie. C'est assez galère en fait.
Commmint Posté 2 Juin 2005 Auteur Posté 2 Juin 2005 Tout est nickel, bravo ! jusqu'au prochain défi CSS
Dan Posté 2 Juin 2005 Posté 2 Juin 2005 Tout est nickel, bravo ! Bravo à toi pour la validation, parce que ce ne sont pas ces quelques & qui représentent le gros oeuvre Dan
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant