XHTML : pas bon pour le référencement ?

XHTML : pas bon pour le référencement ? - HTML/CSS - Programmation

Marsh Posté le 11-10-2003 à 11:48:45    


  En regardant les logs d'erreur de quelques sites en XHTML je me suis aperçu que les moteurs de recherche avaient des problèmes pour suivre des liens du type :
 
<a href="blabla.html?a=4&amp;b=5"> ...
 
  Altavista et quelques autres ne convertissent pas le "&amp;" et cherchent alors à charger une URL invalide. Du coup sur certains sites, seule la home page est indexee :(
 

Reply

Marsh Posté le 11-10-2003 à 11:48:45   

Reply

Marsh Posté le 11-10-2003 à 11:50:14    

Etrange... Pourtant, le &amp; est nécessaire pour les vieux navigateurs genre Netscape 3...
 
Font chier à rien respecter...


---------------
W3C : Leading the Web to Its Full Potential... - Membre du W3C l33t club
Reply

Marsh Posté le 11-10-2003 à 12:15:37    

Tu peux t'aranger pour transformer les adresses avec des ?blabla=blabla en /blabla/
 
De plus en plus de gens le font.

Reply

Marsh Posté le 11-10-2003 à 13:19:28    

mais quand il y a plusieurs paramètres à passer ?

Reply

Marsh Posté le 11-10-2003 à 13:44:43    

ben adresse/param1/param2/param3 etc...


Message édité par Hermes le Messager le 11-10-2003 à 13:45:20
Reply

Marsh Posté le 11-10-2003 à 15:16:44    

Tu as essayé avec le codage direct par &#38;  ??
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 11-10-2003 à 15:30:15    

gilou a écrit :

Tu as essayé avec le codage direct par &#38;  ??
A+,


c'est quoi ca ?
 
A+,


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 11-10-2003 à 17:12:49    

J'ai suivi les bons conseils de Hermes et tout a été converti en script.php/variable1/contenu1/variable2/contenu2/etc.
 
Histoire de ne pas refaire tous les scripts voici la petite fonction que j'ai ajoutée pour convertir ce format en équivalent de "?variable1=contenu1&variable2=contenu2" :
 

Code :
  1. function process_path_info() {
  2.     if (empty($_SERVER['PATH_INFO'])) {
  3.         return;
  4.     }
  5.     $a = explode('/', $_SERVER['PATH_INFO']);
  6.     $b = 1;
  7.     $c = count($a) - 1;
  8.     if (get_magic_quotes_gpc()) {
  9.         while ($b < $c) {
  10.             $_GET[stripslashes($a[$b])] = stripslashes($a[$b + 1]);
  11.             $b += 2;
  12.         }
  13.     } else {
  14.         while ($b < $c) {
  15.             $_GET[$a[$b]] = $a[$b + 1];
  16.             $b += 2;
  17.         }
  18.     }
  19. }


 
  Ca à l'air de marcher.
 
  Merci encore pour ton aide Hermes !

Reply

Marsh Posté le 11-10-2003 à 21:14:10    

Si ton serveur le supporte, tu peux même omettre le ".php", c'est ce que je fais sur mon site :D


Message édité par antp le 11-10-2003 à 21:14:47

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 12-10-2003 à 18:42:15    

simogeo a écrit :


c'est quoi ca ?
 
A+,


le codage direct du caractere &
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 12-10-2003 à 18:42:15   

Reply

Marsh Posté le 12-10-2003 à 19:16:26    

gilou a écrit :


le codage direct du caractere &
A+,


désolé de faire el boulai mais bon ... quel encodage ?  :??:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 12-10-2003 à 20:44:07    

excusez moi mais cela m'interesse le fait de remplacer les ?mm=pp par /pp/ donc si quelqu'un pourrait m'indiquer précisement comment ca fonctionne et un moyen simple d'utiliser cela ce serait sympa
 
Merci :)

Reply

Marsh Posté le 12-10-2003 à 22:56:03    

Reply

Marsh Posté le 12-10-2003 à 22:59:39    

dambo a écrit :

excusez moi mais cela m'interesse le fait de remplacer les ?mm=pp par /pp/ donc si quelqu'un pourrait m'indiquer précisement comment ca fonctionne et un moyen simple d'utiliser cela ce serait sympa
 
Merci :)


En fait c'est le contraire, on remplace /pp/ par une ?mm=pp.
 
Le code PHP est donné en dessus. En gros il consiste à récupérer l'URL demandée et d'exploser la chaine en récupérant les paramètres séparés par /.
 
Il est cependant possible de faire faire ceci par Apache avec mod_rewrite (réécriture de l'URL). L'avantage étant qu'on a le choix du nom des variables :
 
www.monsite.com/2003/10/12/ transformé par mod_rewrite en : www.monsite.com/index.php?annee=20 [...] 10&jour=12 puis le tout est passé au script php.
 
 


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 13-10-2003 à 00:30:46    


merci gm_  :)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 13-10-2003 à 09:41:36    

Bizarre, parceque pourtant, si tu saisis une URL avec des &amp; dans la barre d'url de n'importe quel navigateur, ça marche... Le serveur fait l'interprétation au cas où le navigateur n'ait pas sû normalement :??:

Reply

Marsh Posté le 13-10-2003 à 10:11:03    

simogeo a écrit :


désolé de faire el boulai mais bon ... quel encodage ?  :??:  

unicode en XML (contrairement a SGML ou c'etait l'encodage courant, ce qui creait des problemes).
La norme XML est tres claire sur lew sujet:
[Definition:] A character reference refers to a specific character in the ISO/IEC 10646 character set, for example one not directly accessible from available input devices.

Character Reference
[66]  CharRef ::=  '&#' [0-9]+ ';'  
   | '&#x' [0-9a-fA-F]+ ';' [  WFC: Legal Character ]


 
 
A+,


Message édité par gilou le 13-10-2003 à 10:12:22

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 13-10-2003 à 13:21:31    

gilou a écrit :

unicode en XML (contrairement a SGML ou c'etait l'encodage courant, ce qui creait des problemes).
La norme XML est tres claire sur lew sujet:
[Definition:] A character reference refers to a specific character in the ISO/IEC 10646 character set, for example one not directly accessible from available input devices.

Character Reference
[66]  CharRef ::=  '&#' [0-9]+ ';'  
   | '&#x' [0-9a-fA-F]+ ';' [  WFC: Legal Character ]


 
 
A+,


 
merci gilou, j'ai lu suite au post de gm_  
ca m'a surpris j'avais jamais encore vu cet encodage.  :)  
il ne me semble pas franchement utilisé. Est-il supporté par *tout* les browsers? [:cupra]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 13-10-2003 à 13:43:51    

Edite une page du forum, tu verras que tous les caractères à la con sont encodé de cette façon. Surtout ça :
 
ああっ女神さまっ
 
Tous les navigateurs (à condition de supporter le japonnais) pourront lire le mot que j'ai posté, alors que le forum l'a encodé avec ce système.

Reply

Marsh Posté le 13-10-2003 à 13:45:36    

Pour info, le mot que j'ai écrit est traduit :
 
ああっ女神さまっ
 
Et ça veux dire "aa megamisama", c'est à dire "Ah! Ma Déesse", le titre d'un manga que j'aime beaucoup, et Urd-sama aussi certainement, puisqu'il porte le nom d'une des héroines du manga :D

Reply

Marsh Posté le 13-10-2003 à 13:46:03    

:heink: l'est con ce forum :D
 

ああっ女神さまっ


 
Ca passe ce coup là ? :)
 
 
Rhô !!!
 
&amp;#12354;&amp;#12354;&amp;#12387;&amp;#22899;&amp;#31070;&amp;#12373;&amp;#12414;&amp;#12387;
 
Joce, viens-là y bug le forum, on peut pas écrire des caractères sous la forme &#xxx; il les interprête :o


Message édité par MagicBuzz le 13-10-2003 à 13:47:47
Reply

Marsh Posté le 13-10-2003 à 14:18:36    

simogeo a écrit :


 
merci gilou, j'ai lu suite au post de gm_  
ca m'a surpris j'avais jamais encore vu cet encodage.  :)  
il ne me semble pas franchement utilisé. Est-il supporté par *tout* les browsers? [:cupra]

Oui.
Contrairement aux &eacute; &agrave; et autres qui doivent etre definis dans un fichier a part (et justement, ils sont definis avec des entites caracteres: <!ENTITY eacute "&#225;"> ) pour etre valides dans un document XML (sauf &amp; = &, &lt; = < &gt; = > &apos; = 'et &quot; = " qui sont predefinis).
Pour XHTML, il y a un fichier faisant toutes les declarations ad-hoc du type <!ENTITY eacute "&#225;"> qui est utilisé.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 13-10-2003 à 14:20:18    

MagicBuzz a écrit :

:heink: l'est con ce forum :D
 

ああっ女神さまっ


 
Ca passe ce coup là ? :)
 
 
Rhô !!!
 
&amp;#12354;&amp;#12354;&amp;#12387;&amp;#22899;&amp;#31070;&amp;#12373;&amp;#12414;&amp;#12387;
 
Joce, viens-là y bug le forum, on peut pas écrire des caractères sous la forme &#xxx; il les interprête :o


Normal, quand tu tapes des caracteres ici, c'est considere comme du contenu XML et non du source XML.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 13-10-2003 à 14:21:48    

ouais, mais si je tapes &amp;, c'est bien &amp; qui s'affiche, pas & c'est pourquoi c'est bizarre que &#123; soit interprété &#123; et non pas & #123;


Message édité par MagicBuzz le 13-10-2003 à 14:21:55
Reply

Marsh Posté le 13-10-2003 à 14:22:29    

:heink: tiens, pourquoi 123 passe :??:
 
TAIST : Ӓ

Reply

Marsh Posté le 13-10-2003 à 14:22:38    

Ha :) 1234 passe pas :D

Reply

Marsh Posté le 13-10-2003 à 14:25:33    

Faut mettre un 0 devant le nombre pour que le forum les accepte, bidouille de Joce.


Message édité par antp le 13-10-2003 à 14:25:46
Reply

Marsh Posté le 13-10-2003 à 14:38:23    

Pour avoir eu un problème dérivé sur le projet "une bouteille à la mer" avec Mara's Dad, je pense qu'en fait c'est pas ça.
 
En fait, le forum HFR n'est pas en UTF-8 (ce qui est assez zarb), du coup quand on tape un caractère à la con, le navigateur envoie le caractère de façon à être compatible avec l'encodage actuel (ISO-8859-1) et ce format compatible est justement &#xxx;. Donc le forum n'interpète pas le & dans ce cas, pour permettre l'utilisation de caractères spéciaux.
Et le fait de mettre un 0 devant fais simplement que le parseur HTML est tout con, et ne sais pas que les 0 facultatif son sans valeur. Pour lui, avec 5 caractères ça n'a plus de valeur connue, donc il affiche le source au lieu de l'interpréter, puisque c'est pas interprétable. (ou alors Joce à bidouillé pour que quand on passe sur 5 caractères, il rajoute un &amp;)
 
Anyway. Il suffirait de passer en UTF-8 pour que ça marche convenablement, et à ce moment, le forum pourrait encoder les & dans tous les cas, puisque les navigateurs n'auraient pas besoin d'envoyer/recevoir de code &#xxx; pour interpréter correctement les caractères. En effet, quand on est en UTF-8, le navigateur envoie en format brut les caractères spéciaux, ils passent très bien.
 
En un mot : Vive l'UTF-8


Message édité par MagicBuzz le 13-10-2003 à 14:38:42
Reply

Marsh Posté le 13-10-2003 à 16:42:51    

Le fait qu'il faille mettre un 0 c'est uniquement dû à une bidouille de Joce. Lui il voulait pas supporter les &#... parce que ça posait un problème avec un autre truc du forum, j'ai insisté, du coup il a mis les &#0... Ça marcherait très bien tout seul sinon (avec des &#...) :D
 
Par contre je suis d'accord : vive l'UTF8 :love:

Reply

Marsh Posté le 14-10-2003 à 01:59:03    

un article récent sur le sujet sur sitepoint  
 
http://www.sitepoint.com/article/1227
 
 :hello:


---------------
mon blog : http://www.magnin-sante.ch/journal/
Reply

Marsh Posté le 14-10-2003 à 02:37:44    

Citation :

These days, most Website owners head to a search engine optimisation company if they want to improve search engine traffic.


[:mlc]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 14-10-2003 à 12:07:09    

Moi pour le référencement, je me pose pas de question : google :)
 
Pis après, chais pas comment ça se fait, mais Manga-Torii par exemple (cf. signature) s'est référencé "tout seul" (:D) sur plein d'autres moteurs et annuaires :D

Reply

Marsh Posté le 14-10-2003 à 12:07:31    

Euh... J'ai oublié la signature :D

Reply

Marsh Posté le 14-10-2003 à 12:12:59    

MagicBuzz a écrit :

Moi pour le référencement, je me pose pas de question : google :)
 
Pis après, chais pas comment ça se fait, mais Manga-Torii par exemple (cf. signature) s'est référencé "tout seul" (:D) sur plein d'autres moteurs et annuaires :D


 
parce qu'un site est surtout bien référencé quand il est connu et que bcp de liens pointent dessus. ;)

Reply

Marsh Posté le 17-10-2003 à 03:27:33    

Citation :


parce qu'un site est surtout bien référencé quand il est connu et que bcp de liens pointent dessus. ;)

mf.
3/10 sur PageRank, y'a encore du boulot  :whistle:  :D
 
Boh, je devrais rien dire je suis pas mieux classe  :(  [:effisk]


Message édité par effisk le 17-10-2003 à 03:36:13

---------------
London Box Office: Comédie Musicale Londres
Reply

Marsh Posté le 17-10-2003 à 08:58:55    

Comment on connait sur pagerank ?

Reply

Marsh Posté le 17-10-2003 à 09:01:32    

axey a écrit :

J'ai suivi les bons conseils de Hermes et tout a été converti en script.php/variable1/contenu1/variable2/contenu2/etc.
 
Histoire de ne pas refaire tous les scripts voici la petite fonction que j'ai ajoutée pour convertir ce format en équivalent de "?variable1=contenu1&variable2=contenu2" :
 

Code :
  1. function process_path_info() {
  2.     if (empty($_SERVER['PATH_INFO'])) {
  3.         return;
  4.     }
  5.     $a = explode('/', $_SERVER['PATH_INFO']);
  6.     $b = 1;
  7.     $c = count($a) - 1;
  8.     if (get_magic_quotes_gpc()) {
  9.         while ($b < $c) {
  10.             $_GET[stripslashes($a[$b])] = stripslashes($a[$b + 1]);
  11.             $b += 2;
  12.         }
  13.     } else {
  14.         while ($b < $c) {
  15.             $_GET[$a[$b]] = $a[$b + 1];
  16.             $b += 2;
  17.         }
  18.     }
  19. }


 
  Ca à l'air de marcher.
 
  Merci encore pour ton aide Hermes !
 

merci,je vais surement m'en servir sur mon site :jap:


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed