Dav_c
Messages postés194Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention11 décembre 2015
-
15 janv. 2010 à 20:28
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 2011
-
16 janv. 2010 à 08:32
Bonjour,il y a peu j'ai décider d'enlever les frames du mon site maintenant j'utilise sa :
<?php
session_start(); // Démarage de la session OBLIGATOIRE
if($lang[0]=="fr")
{
$Lang_session = 'FR'; // on initie la variable
session_register("Lang_session"); // On enregistre une variable appelée "variable" dans la session SANS LE $ DEVANT
}
else
{
$Lang_session = 'EN';
session_register("Lang_session");
}
?>
Le problème c'est que je doit passer la variable $page de page en page dans tous mes liens et franchement je trouve que cette solution n'est vraiment pas propre.. quelqun aurait une solution alternative?
Pour cela, dans un fichier .htaccess à la racine de ton site :
RewriteEngine On
RewriteBase /
RewriteRule ^informations$ index.php?page=informations [NC,L]
Une ligne, sur le même principe, pour chaque page que tu souhaites.
Je pense qu'il est possible de faire plus court (donc plus performant), mais j'ai pas le courage de chercher là maintenant tout de suite (plutôt demain, quand j'aurai dormi).
--
Neige
Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 15 janv. 2010 à 21:29
J'ai oublié deux choses :
- il faut qu'Apache soit compilé avec mod_rewrite (ou mod_rewrite compilé en tant en DSO)
- conséquence du point précédent, ça ne marche pas chez tous les hébergeurs (dont Free)
--
Neige
Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 16 janv. 2010 à 05:21
Euh tu utilises quoi comme serveur ? Je suppose que si t'es sur IIS c'est que t'as pas le choix.
L'idée reste la même : c'est simplement la manière de réécrire les URL qui va différer. Je ne sais pas comment IIS gère ça, y'a sûrement une belle fenêtre d'admin quelque part...
--
Neige
Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 16 janv. 2010 à 08:32
Ben on dirait que c'est pas vraiment possible.
Alors il reste la possibilité d'utiliser le PATH_INFO. Ca donne des url comme ça :
- tonsite.tld/index.php/accueil
- tonsite.tld/index.php/informations
Tout ce qui se trouve après index.php est normalement accessible avec $_SERVER['PATH_INFO'] (en tout cas sur Apache, je ne sais pas avec ZMWS) variable qui sera alors :
/accueil ou /informations (avec le /)
Il faut alors vérifier si cette variable existe et si oui, sa valeur. Au lieu de tester la valeur de GET['page'], il suffit de tester celle-ci.
Là, j'ai pas mieux à te proposer...
Pour savoir si cette variable existe bien avec ZMWS, il suffit de faire un script, par exemple info.php et de l'ouvrir dans le navigateur comme ceci :
tonsite.tld/info.php/test
si la variable $_SERVER['PATH_INFO'] est bien définie, elle doit apparaître dans la liste des variables en fin de page.
--
Neige
Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)