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 :

Aide pour mettre une condition sur une url


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut Aide pour mettre une condition sur une url
    Bonjour,

    Je débute en php et j'aurais besoin sur mon site d'appliquer un style particulier en fonction de l'url. J'ai cherché sur le net et essayé différents codes mais en vain.

    Le site se trouve sur un sous dossier de mon site, donc l'url est sous cette forme http://www.monsite.com/dolphin/member.php, et je mets les codes dans l'index.php de ce sous-dossier. Voici mes codes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    if ($_SERVER['REQUEST_URI']=='/dolphin/member.php' ) {
    	print '<style>.fond_haut {display:none;}</style>';
    	} 
    else {};
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $host = $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
    if($host == 'kalianey.com/dolphin/member.php') 
    {
        print '<style>.fond_haut {display:none;}</style>';
    		 echo 'Salut';
    }
    else
    {
        echo '';
    } 
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    $page = $_SERVER['PHP_SELF'];
    if ($page == "/member.php")
    {
    	echo '';
    }
    ?>
    Comme vous pouvez le voir, je ne sais pas trop ce que je fais^^, alors toute aide sera vraiment appréciée!

  2. #2
    Membre actif
    Homme Profil pro
    DSI interne
    Inscrit en
    Juin 2011
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DSI interne
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2011
    Messages : 197
    Points : 290
    Points
    290
    Par défaut
    Bonsoir,

    Je crains ne pas tout avoir saisis...

    Quand tu dis tu veux changer de style en fonction de l'URL : Tu déploies le même code à différent endroit ou tu souhaite avoir un style différent sur chaque page ?
    "Beatus qui prodest quibus potest"

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Bonsoir

    Alors en fait sur mon site j'ai une image de fond que j'aimerais changer selon les rubriques, ou les pages. Du coup j'aimerais, quand je suis sur la page membres.php, faire un print qui ajoutera un nouveau style avec une nouvelle image dans la div qui overridera celle par défaut (je sais que ça marche avec print parce que j'ai caché une div comme ça avec une fonction isMember() == false).

    Donc j'aimerais que quand mon url est http://www/monsite.com/dolphin/membre.php, il y ait un print sur la div .fond_haut (le echo n'était là que pour vérifier que la fonction marchait bien).

    J'espère que je suis un peu plus claire^^

  4. #4
    Membre actif
    Homme Profil pro
    DSI interne
    Inscrit en
    Juin 2011
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DSI interne
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2011
    Messages : 197
    Points : 290
    Points
    290
    Par défaut
    Je penses que tu peut résoudre ton problème avec du simple HTML sur chacune de tes pages membres.php/index.php....

    Mais comme ta question porte sur la détection d'URL je vais t'aider ^^.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    //Récupération de la fin de ton URL
    $url = $_SERVER['REQUEST_URI']; 
     
    if(stristr($url, 'membre')){ //Si page membre détectée
    	<style>.........</style>
    }elseif(stristr($url, 'login')){ //Si page login détectée
    	<style>.........</style>
    }else{ //Si aucun cas détecté
    	<style>.........</style>
    }
    ?>
    En espérant t'avoir aidé
    "Beatus qui prodest quibus potest"

  5. #5
    Membre éclairé Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Points : 723
    Points
    723
    Par défaut
    Est-on obliger de détecter la page sur la quelle on est pour faire du simple css (mise en page)?

    Pourquoi ne pas utiliser une (des) simple(s) feuille(s) de style et d'appliquer le contenu sur chacune de tes page? L'attribut id le fait très bien ...
    _____________________________________________
    Tours Football Club - Turonorum Civitas Libera

    Content pas content de ma réponse? N'hésitez pas votez !!

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Merci MinDBuSteR, j'ai mis ton code en le modifiant un peu, mais cela n'a pas l'air de fonctionner:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //Récupération de la fin de ton URL
    $url = $_SERVER['REQUEST_URI']; 
     
    if(stristr($url, 'member')){ //Si page membre détectée
    	print '<style>.fond_haut {display:none;}</style>';
    	echo 'cela  fonctionne!';
    }
    else{ //Si aucun cas détecté
     
    }
    Sinon oui je pense que c'est obligé, je n'ai qu'une div avec la même classe sur chaque page, donc je ne vois pas comment je peux mettre un fond différent sur la même div sur chaque page (qui est générée en php en agglomérant différents blocs et pages html, il n'y a pas de page en php réellement propre cette page)... Si tu vois une autre manière de procéder je veux bien voir ton code

  7. #7
    Membre éclairé Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Points : 723
    Points
    723
    Par défaut
    pas de passage par le serveur pour faire de la mise en page.
    ps : je suis le seul à trouver ça ridicule?
    Si ta conception de page est mal faite, il faut la revoir.
    Essaye avec cet exemple
    _____________________________________________
    Tours Football Club - Turonorum Civitas Libera

    Content pas content de ma réponse? N'hésitez pas votez !!

  8. #8
    Membre actif
    Homme Profil pro
    DSI interne
    Inscrit en
    Juin 2011
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DSI interne
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2011
    Messages : 197
    Points : 290
    Points
    290
    Par défaut
    Je soutiens ton idée ledisciple, le CSS se suffit pour de la mise en page sans passer par le serveur.

    Je répondais simplement à une question technique pas pratique
    "Beatus qui prodest quibus potest"

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    MA conception de page n'est pas mal faite, le CMS est mal fait . Sous joomla ou sous typo3 je ne ferais jamais comme ça, je sais modifier les pages et les templates sans avoir jamais eu besoin de faire une requête de ce type, mais sous dolphin j'avoue que la construction est très obscure, il y a plein d'include blocks et de pages à différents endroits, et je ne vois pas comment faire autrement.
    Si quelqu'un d'autre veut m'aider dans ma (ridicule) quête, ce serait cool =)

  10. #10
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Après une condition pour sélectionner une feuille de style en fonction de l'url me va aussi, mais sans passer par l'url, vraiment, VRAIMENT je ne vois pas de solution...

  11. #11
    Membre éclairé Avatar de ledisciple
    Homme Profil pro
    observateur de nuage niveau 2.3
    Inscrit en
    Août 2008
    Messages
    860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : observateur de nuage niveau 2.3

    Informations forums :
    Inscription : Août 2008
    Messages : 860
    Points : 723
    Points
    723
    Par défaut
    qui dit URL dit "Attention danger"
    C'est la meilleure passoire pour faire n'importe quoi.
    Sinon, tu aurais peut-être une solution par le javascript avec document.location.href.

    Tu récupères l'url et tu fais ta transformation en local.

    Ceci pourra peut-être t'aider
    _____________________________________________
    Tours Football Club - Turonorum Civitas Libera

    Content pas content de ma réponse? N'hésitez pas votez !!

  12. #12
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Décembre 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Super merci, je regarde ça =)

  13. #13
    Membre confirmé
    Avatar de Jacques Beauregard
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2015
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2015
    Messages : 231
    Points : 595
    Points
    595
    Par défaut
    Citation Envoyé par MinDBuSteR Voir le message
    Je penses que tu peut résoudre ton problème avec du simple HTML sur chacune de tes pages membres.php/index.php....

    Mais comme ta question porte sur la détection d'URL je vais t'aider ^^.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    //Récupération de la fin de ton URL
    $url = $_SERVER['REQUEST_URI']; 
     
    if(stristr($url, 'membre')){ //Si page membre détectée
    	<style>.........</style>
    }elseif(stristr($url, 'login')){ //Si page login détectée
    	<style>.........</style>
    }else{ //Si aucun cas détecté
    	<style>.........</style>
    }
    ?>
    En espérant t'avoir aidé

    Un grand merci ! cela m'a aidé à développer une fonctionnalité dans mon portail.
    Il ne faut jamais prendre les gens pour des cons, mais il ne faut pas oublier qu'ils le sont...

    Le guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [WD18] Metre une colonne d'une Table sur une ligne d'une autre Table
    Par Totophe2 dans le forum WinDev
    Réponses: 2
    Dernier message: 22/11/2013, 12h58
  2. Mettre une condition sur une colonne en splitant une partie ?
    Par wormseric dans le forum Langage SQL
    Réponses: 4
    Dernier message: 22/01/2008, 11h57
  3. Besoin d'aide pour bloquer un nombre sur une TextBox
    Par Torrent74 dans le forum Flash
    Réponses: 2
    Dernier message: 24/10/2007, 20h14
  4. Réponses: 8
    Dernier message: 16/05/2007, 21h16
  5. Réponses: 3
    Dernier message: 03/05/2007, 11h06

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