• Configuration de l'affichage du site :
  • Affichage en pleine largeur
  • Affichage en basse résolution (800px)
  • Affichage en texte seul


Référencement :
conseils, outils, actualité, forum
tout ça gratuit !



Vous êtes ici : Analyses » Autres articles » Gestion des langues et des sessions


Gestion des langues et des sessions en PHP / MySQL

Imprimer cet article

Par Thibaud Elzière, Mai 2004

Sosie Star
Sosie-Star

Note de WebRankInfo : cet article décrit une méthode possible (adaptée aux sites de faible taille), il en existe bien entendu d'autres...

4- Gestion d'autres paramètres

Grâce à la méthode utilisée précédemment, on va pouvoir en jouant sur le fichier .htaccess intégrer, grâce à la fonction add_parameter, le nombre de paramètres désiré à l'intérieur même de l'URL plutôt que dans la chaîne de requête et ce de manière systématique.

Ainsi imaginons qu'il existe un script dans la page article.php (page référencé sous l'id 12) qui permette de lire l'article $a lorsque l'on lance article.php?a=$a. Si l'on veut effectuer des liens à partir de la page d'accueil pour consulter les articles 1, 2, 3 et 4 , il est possible d'écrire les URL respectivement sous la forme :

  • article.php?a=1
  • article.php?a=2
  • article.php?a=3
  • article.php?a=4

Ces liens ne tiennent pas compte de la langue choisie par le visiteur et comporte une chaîne de requête qui ne sera pas forcément suivie par tous les moteurs de recherche.

Grâce à la méthode développée, nous pouvons définir les liens vers ces articles de la manière suivante ($langue=1) ;

  • add_parameter(12, -a1) qui renvoie article-l1-a1.html en langue 1
  • add_parameter(12, -a2) qui renvoie article-l1-a2.html en langue 1
  • add_parameter(12, -a3) qui renvoie article-l1-a3.html en langue 1
  • add_parameter(12, -a4) qui renvoie article-l1-a4.html en langue 1

Il suffit alors de compléter le fichier .htaccess pour signaler au serveur la manière d'interpréter la présence du nouveau paramètre a.

Options +FollowSymlinks
RewriteEngine on

Rewrite ^(.*)-l([0-9]*)(.*)\.html$
 $1$3.php?language=$2 [QSA]

Rewrite ^(.*)-L([0-9]*)(.*)\.php$
 $1$3.php?language=$2 [QSA]

Rewrite ^article-a([0-9]*)(.*)\.php$
 article$2.php?a=$1 [L,QSA] 

Pour rajouter d'autres paramètres, il suffit d'appliquer cette méthode pour un ensemble de paramètres.

Exemple

Imaginons que les articles de l'exemple précédent soient écrit sur plusieurs pages, et que l'on puisse accéder à la 3ème page de l'article 4 en faisant article.php?a=4&p=3.

Le lien sera retourné par la fonction add_parameter(12, -a4-p3) qui renverra article-l1-a4-p3.html. Pour interpréter de manière correcte ce fichier, il va falloir modifier le fichier .htaccess de la manière suivante :

Options +FollowSymlinks
RewriteEngine on

Rewrite ^(.*)-l([0-9]*)(.*)\.html$
 $1$3.php?language=$2 [QSA]

Rewrite ^(.*)-L([0-9]*)(.*)\.php$
 $1$3.php?language=$2 [QSA]

Rewrite article-a([0-9]*)(.*)\.php$
 article$2.php?a=$1 [QSA]

Rewrite article-p([0-9]*)\.php$
 article.php?p=$1 [L,QSA]

Ou bien :

Options +FollowSymlinks
RewriteEngine on

Rewrite ^(.*)-l([0-9]*)(.*)\.html$
 $1$3.php?language=$2 [QSA]

Rewrite ^(.*)-L([0-9]*)(.*)\.php$
 $1$3.php?language=$2 [QSA]

Rewrite article-a([0-9]*)-p([0-9]*)\.php$
 article.php?a=$1&p=$2 [L,QSA]

Suite de l'article :

  1. Introduction
  2. Gestion des sessions
  3. Gestion des langues
  4. Gestion d'autres paramètres
  5. Page suivante Conclusion