IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Session pour un site multilingue


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut Session pour un site multilingue
    Bonjour à tous.

    Voilà j'aimerais concevoir un site multilingue à partir de session.

    Une première question se pose.

    Sachant qu'une session dure environt 30 min ou plus, qu'arrivera t-il à un visiteur qui navigue dans une langue donnée et qui dépasse ce délais ?

    Secondo
    J'ai consulté ce post, mais il y a un bug.
    http://www.developpez.net/forums/sho...d.php?t=211018

    Premièrement il me donne un message d'erreur quand j'insère ce code tout au haut de ma page.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php 
    session_start();
    if (isset($_REQUEST['LANG'] ) {
    $_SESSION['lang'] = $_REQUEST['LANG'];
    }
    $lang = $_SESSION['lang'];
    ?>
    soit : Parse error: parse error, unexpected '{' in /home/cs0412-1/pro/05/index.php on line 3


    Cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_REQUEST['LANG'] ) {
    Et en plus, j'aimerais passer de page en page deux variables soit ; continent($cont) et langue($lang)

    Mais je ne sais pas comment m'y prendre.
    Et je n'ai pas trouvé de tutoriel qui pourrait me guider.

    Si au moin le code plus haut fonctionnait, je pourrais faire quelques tests.

    J'ai consulté aussi ce post, mais je m'y perd.
    http://www.developpez.net/forums/sho...d.php?t=217321

    J'ai été voir ici
    http://julp.developpez.com/php/les-sessions/?page=manip
    mais la variable est déja prédéfinie.
    J'aimerais quelle s'ajuste d'après le lien cliqué.

    Un peu d'aide ou de la documentation(lien) serait grandement apprécié.

    Merci à l'avance
    MAC OS X 10.5.6

  2. #2
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 557
    Points
    557
    Par défaut
    Salut,

    je te donne déjà une première réponse pour le code qui te donne la parse error, qui est tout de même une erreur assez basique et corrigeable facilement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (isset($_REQUEST['LANG'] )) {
    Ensuite, pour ta remarque comme quoi une session dure environ 30 minutes ou plus, ce n'est pas exact. La session aura un timeout que tu peux définir toi-même (plusieurs valeurs à vérifier, dans la config .ini). De plus, une session n'expire que si l'utilisateur n'a fait aucune action réactualisant ce fameux timeout via les session_start(). Je te conseille de lire la doc sur les sessions.
    Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure

  3. #3
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Je sais pas si ce mot est supporté dans le forum mais bon j'ai vais !

    Putain que je suis bête !

    C'est comme oublier ses (s) quand tu écris au pluriel...

    C'est juste dommange qu'il y a deux erreur dans un script supposé aider des débutants.

    Je fais mes test et je reviens avec une réponse.

    Et merci pour l'éclaircissement du timeout de session.
    C'est tout à fait logique.

    Merci beaucoup et en passant, j'adore ta signature.
    lol, oui vive Microsoft
    MAC OS X 10.5.6

  4. #4
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Rebonjour,

    Après quelques tests, je me rend compte que je suis vraiment débutant avec les sessions. D'ailleur c'est la toute première fois que je tente de les utilisés.

    Et ça y est je suis mêler...à vrai dire, ça ne fonctionne pas.

    Je suppose que les session peuvent servir à passer des variable d'une page à l'autre sans quelles soient affichées dans la barre d'adresse. Est-ce exact ? Car c'est mon but.

    Alors, faut-il que j'assigne les variables au tout début dans un lien ou dans la session. ?

    Faut-il que j'insère le script à partir de la toute première page ou à partir de celle qui sera traitée par la suite ?

    J'explique la structure du site :

    lesite.com/index.php = elle contient 2 liens ;
    1 amérique du nord (lesite/home.php?cont=na&lang=fr)
    1 europe (lesite/home.php?cont=eu&lang=fr)

    Dans le site de l'amérique du Nord, il y aura un choix de trois langues que l'on pourra choisir à partir de la page home.php et les autres.

    Soit :
    1. Français (fr)
    2. Anglais (en)
    3. Espagnol (sp)
    Pour l'europe
    1. Français (fr) qui ne sera pas le même français qu'en Amérique
    2. Espagnol (sp) qui ne sera pas le même espagnol qu'en Amérique.
    Donc au total, deux continents et cinq langues.

    Alors, mon script devrait-il ressembler à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    session_start();
    // Continent
    if (isset($_REQUEST['CONT'] )) {
    $_SESSION['cont'] = $_REQUEST['CONT'];
    }
    $cont = $_SESSION['cont'];
    // Langue
    if (isset($_REQUEST['LANG'] )) {
    $_SESSION['lang'] = $_REQUEST['LANG'];
    }
    $lang = $_SESSION['lang'];
    ?>
    À l'aide !!! Je suis tout mélangé.

    D'ici là, je continu mes tests et lecture.

    Merci à l'avance.
    MAC OS X 10.5.6

  5. #5
    Membre actif
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Points : 226
    Points
    226
    Par défaut
    et si tu remplaces tout betement $_REQUEST en $_GET ?!

  6. #6
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Merci pour ta réponse.

    Mais sachant que pour alimenter un GET, (à moins que je me trompe) il faut passer les variables par l'adresse.

    Pour ma part, j'aimerais procéder autrement car dans ce cas, il faut que je modifie tout les liens avec $cont et $lang.

    Le seul moyen d'arriver à mes fins serait-il en utilisant POST ?

    De cette manière l'adresse sera simplié et je n'aurais pas à modifier tous les liens.

    Qu'en pensez-vous?
    MAC OS X 10.5.6

  7. #7
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Je me répond moi-même.

    il n'est pas conseillé d'utiliser des variable de sessions pour les sites multilingues car cela fausse les résultats dans les moteurs de recherche.

    À moins que quelqu'un prouve le contraire... je me dois de d'ajouter la mention résolu d'ici peu.

    MAC OS X 10.5.6

  8. #8
    Membre du Club Avatar de Orb Dorb
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 71
    Points : 46
    Points
    46
    Par défaut
    Comme je mentionnais dans un autre message...

    La saison estivale est débutée et les répondants en profitent.

    Vous faites bien et je m'efforce de faire de même.
    MAC OS X 10.5.6

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 04/07/2013, 23h43
  2. La meilleure solution pour un site multilingue ?
    Par nhunhu dans le forum Général Conception Web
    Réponses: 5
    Dernier message: 30/01/2013, 11h59
  3. Requête de sélection pour un site multilingue
    Par royalwear dans le forum Langage SQL
    Réponses: 8
    Dernier message: 09/08/2011, 17h57
  4. Souci pour un site multilingue (jeune Flasheur)
    Par Néo-Fx dans le forum Flash
    Réponses: 7
    Dernier message: 08/04/2007, 12h57
  5. Utilisation des sessions pour un site en wml
    Par dondano dans le forum Langage
    Réponses: 2
    Dernier message: 05/01/2007, 11h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo