Améliorer une suite de conditions php

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par sff, 10 Novembre 2016.

  1. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    531
    J'aime reçus:
    0
    Bonjour,

    j'aimerai savoir si c'est possible d'améliorer et de réduire cette suite de conditions php :

    Code:
    if($_GET == null){
    	
    	include("templates/pages/home.php");	
    
    }else{
    
    	if(isset($_GET['page'])){
    		
    		switch ($_GET['page']) {
    		case 'terms-and-conditions': include("templates/pages/terms-and-conditions.php"); break; 
    		case 'privacy-policy': include("templates/pages/privacy-policy.php"); break; 
    		default: include("templates/pages/404.php");
    		}
    		
    	}elseif(isset($_GET['city'])){
    		
    		include("templates/pages/home.php");	
    		
    	}else{
    		
    		include("templates/pages/404.php");	
    		
    	}
    }
    Merci pour votre aide
     
  2. niap
    niap WRInaute discret
    Inscrit:
    17 Octobre 2009
    Messages:
    138
    J'aime reçus:
    0
    Personnellement plutôt que d'avoir 6 include, j'en conserverais 1 et je mettrais en variable le nom du fichier à inclure.
    Ensuite de façon général, plutôt que de tester différentes variables vides, je déclarerais une seule variable qui gère le type de contenu. C'est plus propre et plus simple à maintenir. Donc ça suppose de ne plus faire $_GET['city'] mais $_GET['page'] = 'city'

    Code:
    // déclare la variable
    if(isset($_GET['page']) $page = $_GET['page'];
    else $page = "valeurParDefaut";
    
    // contrôle sa valeur
    switch($page){
    case 'terms-and-conditions' :
        $f = 'terms-and-conditions.php';
        break;
    case 'privacy-policy' :
        $f = 'privacy-policy.php';
        break;
    case 'city' :
        $f = 'home.php';
        break;
    default
        $f = '404.php';
        break;
    }
    
    // import le fichier
    include("templates/pages/".$f);
    
    Sinon tu peut utiliser un tableau associatif. Mais là encore il vaut mieux utiliser une variable pour gérer la page.

    Code:
    // définit les pages
    $pageLst = array(
    'terms-and-conditions'=>'terms-and-conditions.php', 
    'privacy-policy'=>'privacy-policy.php', 
    'city'=>'home.php'
    );
    
    // cherche la page
    if(isset($_GET['page']) && isset($pageLst[$_GET['page']])) $f = $pageLst[$_GET['page']];
    
    // vérifie si on a trouvé quelque chose
    if(empty($f)) $f = '404.php';
    
    // import le fichier
    include("templates/pages/".$f);
    
    Voilà deux pistes différentes. En espérant que ça aide.
     
  3. indigene
    indigene WRInaute accro
    Inscrit:
    7 Septembre 2003
    Messages:
    4 158
    J'aime reçus:
    173
    Perso je gère ça dans le .htaccess et j'ai ensuite plusieurs scripts php pour chaque type de page.

    Donc quand un de ces scripts s'exécute je sais que je suis sur un tel type de page et je n'ai pas besoin de tester tout ça. Je récupère simplement le numéro de l'article à afficher et s'il n'existe pas en base alors un message comme quoi c'est inconnu, sinon je formate la page avec les données récupérées en base.
     
Chargement...
Similar Threads - Améliorer suite conditions Forum Date
Comment améliorer les positionnements d'un site ? Débuter en référencement 1 Août 2020
Pagespeed insights : comment améliorer la vitesse d'une page ? Demandes d'avis et de conseils sur vos sites 10 Juin 2020
Comment améliorer son référencement ? Débuter en référencement 3 Juin 2020
Améliorer référencement Royaume Uni Référencement international (langues, pays) 13 Mai 2020
Améliorer meilleurs articles ou les moins bons ? Débuter en référencement 27 Avril 2020
Améliorer la vitesse sous Wordpress : passer toutes les pages en article Administration d'un site Web 3 Avril 2020
Comment améliorer mon référencement sur une page catégorie ? Débuter en référencement 2 Mars 2020
WordPress Améliorer la vitesse: Minimize request size Développement d'un site Web ou d'une appli mobile 1 Mars 2020
Conseils pour améliorer un site E-commerce Demandes d'avis et de conseils sur vos sites 28 Janvier 2020
Améliorer la vitesse de mon site et le référencement Développement d'un site Web ou d'une appli mobile 7 Décembre 2019
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice