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 :

Afficher un thème sur une autre page


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2007
    Messages : 165
    Points : 119
    Points
    119
    Par défaut Afficher un thème sur une autre page
    Salut
    S'il vous plait aidez-moi a résoudre ce problème:
    J'ai crée plusieurs thèmes et les ai placés sur un menu inclus dans index. ça marche bien avec l'index, mais lorsque j'ouvre une autre page
    le thème disparu et je ne comprend pas pourquoi ? Alors que j'ai ouvert la session_start() avant le <html>

    Le code en rapport avec le thème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    <?php 
    session_start();
    $_SESSION['theme'] = 'design'; 
    ?>
     
    <html>
    <head>
    <link rel="stylesheet" media="screen" type="text/css" title="designs" href="<?php echo $_SESSION['theme'];?>.css" />
    .
    .
    .
    </head>
    <body>
    .
    .
    .
    <ul>
    			<li ><a href='index.php?designs=design'>1 Octet</a></li >
    			<li ><a href='#'>Chabanus</a></li >
    			<li ><a href='index.php?designs=design3'>Verdure</a></li >
    			<li ><a href='index.php?designs=design4'>Marine</a></li >
    			<li ><a href='index.php?designs=design5'>Bonbon</a></li >
    		</ul>
     
    <?php
     
    if (isset($_GET['designs']))
    {
      if($_GET['designs'] == 'design')
       {
          $_SESSION['theme'] = 'design';
       }
      elseif($_GET['designs'] == 'design3')
       {
          $_SESSION['theme'] = 'design3';
       }
    elseif($_GET['designs'] == 'design4')
       {
          $_SESSION['theme'] = 'design4';
       }
       elseif($_GET['designs'] == 'design5')
       {
          $_SESSION['theme'] = 'design5';
       }
     
    }
    ?>
    Merci et bonne soirée

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2007
    Messages : 148
    Points : 186
    Points
    186
    Par défaut
    Bonsoir,

    C'est tout à fait logique, à chaque lancement de page, quelqu'elle soit, tu réinitialise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php 
    session_start();
    $_SESSION['theme'] = 'design'; 
    ?>
    par conséquent il prendra toujours le thème "design" et pas les autres.

    GoT



    EDIT : désolé j'ai oublié de corriger ton code


    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    session_start();
    $_SESSION['designs'] = isset($_GET['designs']) ? $_GET['designs'] : "design";
    ?>

    Je ne comprend pas pourquoi tu faisais une vérification de $_GET pour attribuer la même valeur, il fallait par logique faire SESSION = LA VALEUR DU GET et non VERIFIER GET, SESSION= DESIGNmachinTruc (DESIGNmachinTruc ayant la même valeur que le GET :/)

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2007
    Messages : 165
    Points : 119
    Points
    119
    Par défaut
    Merci pour ta réponse
    Ton code ne fonctionne pas sur la page que j'ai voulu vérifier si cela ne changer pas, j'ai essayé avec:
    $_SESSION['designs'] = isset($_GET['designs']) ? $_GET['designs'] : "design";
    et
    $_SESSION['theme'] = isset($_GET['designs']) ? $_GET['designs'] : "design";
    sans résultats

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2007
    Messages : 148
    Points : 186
    Points
    186
    Par défaut
    Bonsoir,

    oui il est vrai que j'ai fais une erreur dans le nommage de la variable de session ^^' Fais voir à quoi ressemble ton code après modification, sans oublier de ne pas changer les variables à la fin du programme mais au début du programme.

    Got

  5. #5
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2007
    Messages : 165
    Points : 119
    Points
    119
    Par défaut
    L'index du site:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    session_start();
    .
    .
    .
    ?>
    <html>
    .
    .
    <head>
     <link rel="stylesheet" media="screen" type="text/css" title="designs" href="<?php echo $_SESSION['theme'];?>.css" />
    .
    .
    .
    </head>
    <body>
    .
    .
    .
    <div id="menu">
     
     <?php include("menu.php") ?>
     </div>
    .
    .
    .
    </body>
    Le contenu du menu:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <?php
    session_start();
    $_SESSION['theme'] = 'design'; 
    ?>
    <html>
    .
    .
    <head>
     <link rel="stylesheet" media="screen" type="text/css" title="designs" href="<?php echo $_SESSION['theme'];?>.css" />
    .
    .
    .
    </head>
    <body>
    .
    .
    .
        <div class="element_menu"> 
                   <h3> Nos Thèmes</h3> <br/>
     
    <ul>
    			<li ><a href='index.php?designs=design'>1 Octet</a></li >
    			<li ><a href='#'>Chabanus</a></li >
    			<li ><a href='index.php?designs=design3'>Verdure</a></li >
    			<li ><a href='index.php?designs=design4'>Marine</a></li >
    			<li ><a href='index.php?designs=design5'>Bonbon</a></li >
    		</ul>
    <?php
     
    if (isset($_GET['designs']))
    {
      if($_GET['designs'] == 'design')
       {
          $_SESSION['theme'] = 'design';
       }
      elseif($_GET['designs'] == 'design3')
       {
          $_SESSION['theme'] = 'design3';
       }
    elseif($_GET['designs'] == 'design4')
       {
          $_SESSION['theme'] = 'design4';
       }
       elseif($_GET['designs'] == 'design5')
       {
          $_SESSION['theme'] = 'design5';
       }
     
    }
     
     
    ?>
                </ul></div>
    .
    .
    .
    </body>
    Voici la page à laquelle je m'oriente pour voir si le thème reste:

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <?php  
    session_start(); 
    $_SESSION['theme'] = isset($_GET['designs']) ? $_GET['designs'] : "design";
    .
    .
    .
    ?>
    <html>
    .
    .
    <head>
     <link rel="stylesheet" media="screen" type="text/css" title="designs" href="<?php echo $_SESSION['theme'];?>.css" />
    .
    .
    .
    </head>
    .
    .
    .
    <body>
    .
    .
    .
    </body>

    Si tu veux essayer voici le lien http://1octet.ifrance.com .

    Merci de m'aider c'est gentil

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2007
    Messages : 148
    Points : 186
    Points
    186
    Par défaut
    Bonjour,

    Arf que je suis stupide par moment ^^'


    La solution à ton problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?php
    session_start():
    if(!isset($_SESSION['theme'])) // session pas créer, alors on l'a créer
    {
    	$_SESSION['theme'] = isset($_GET['designs']) ? $_GET['designs'] : "design";
    }
    else
    {
    	if(isset($_GET['designs']))//on regarde si y'a la méthode get
    	{
    		if($_SESSION['theme'] != $_GET['designs'])//Condition peut être pas obligatoire si tu n'affiches le get que lors du changement
    		{
    			$_SESSION['theme'] = $_GET['designs'];
    		}
    		/*
    		Je te conseille de faire une vérification au passage savoir si le thème existe.
    		*/
    	}
    	// sinon il ne se passe rien, on garde la même session qu'avant.
    }
    ?>
    Ca devrait marcher, au passage change vite d'hébergement, je crois que y'a pas plus pourrit, prend free il n'y a pas de pub et c'est plus facile

Discussions similaires

  1. Afficher la value d'un bouton radio sur une autre page html ?
    Par c-bolo dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 07/10/2009, 16h01
  2. Réponses: 1
    Dernier message: 15/04/2008, 20h23
  3. afficher le detail de la recherche sur une autre page
    Par super-java dans le forum Langage
    Réponses: 1
    Dernier message: 29/10/2007, 17h02
  4. Réponses: 3
    Dernier message: 13/09/2007, 13h33
  5. Réponses: 5
    Dernier message: 12/06/2006, 10h27

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