Posez votre question Signaler

Variable dans include

Angelneonizz 442Messages postés 9 décembre 2003Date d'inscription 6 janvier 2012Dernière intervention - Dernière réponse le 22 janv. 2010 à 20:33
Bonjour,
j'ai un petit problème sur un site que je viens tout juste de commencer. Je voudrais pouvoir avoir plusieur theme pour mon site j'ai donc une page index.php au tout début qui contient uniquement 2 include :
$theme = "scrin"
include ('theme/$theme/header.html');
include ('theme/$theme/index.php');
malheureseument ça ne fonctionne pas car il ne remplace pas $theme par scrin
si quelqu'un pouvait m'aider SVP, je m'y prens peut être mal pour créer des thémes mais ça me paraissait simple :'(
merci d'avance
Lire la suite 

Variable dans include »

5 réponses
Réponse
+1
moins plus
bonjour,

en concaténant ton code ca ne marche pas ??

ca donne ca

$theme = "scrin"
include "('theme/".$theme."/header.html')";
include "('theme/".$theme."/index.php')"; 
Ajouter un commentaire
Réponse
+1
moins plus
Impec :) effectivement ça fonctionne, merci beaucoup.

Entre temps j'ai aussi essayé ça et sa fonctionne :

$theme = "scrin"
$theme_header = "theme/$theme/header.html";
$theme_index = "theme/$theme/index.php";

include $theme_header;
include $theme_index;

Puis je t'embéter encore un peu ?

en fait $theme je voudrait le récupérer dans l'url mais si les visiteurs arrivent directement sur ma page le lien ne contient pas de variable theme, j'ai donc mis in IF, si c'est vide theme = scrin, comme ceci

$recup_theme = $_GET['theme'];
if( $recup_theme == "" )
{
$theme = "scrin";
}

ça fonctionne mais il y a un message d'erreur sur la page comme quoi il ne trouve pas la valeur theme.
comment est ce que je peux résoudre ce problème ?

merci d'avoir répondu aussi vite
Ajouter un commentaire
Réponse
+0
moins plus
alors il y a un test qui existe justement pour ce cas là

isset


dans ton cas on va dire
if (isset($_GET['theme']))
 $recup_theme = $_GET['theme']; 
else 
 $recup_theme = "scrin";


en fait il dit :

if (isset($_GET['theme']))              // si $_GET['theme'] existe
 $recup_theme = $_GET['theme'];         // alors $recup_theme = $_GET['theme']
else $recup_theme = "scrin";            // sinon $recup_theme = "defaut" ,
                                        // tu remplace scrin par ce que tu veux.
Ajouter un commentaire
Réponse
+0
moins plus
Je crois que y'a une faille non ?
Si dans $_GET['theme'] je met un truc "louche" je pourrais peut-etre afficher une autre page index non ?!
Je connais pas trop en terme de sécurité, mais si tu met :

$_GET['theme'] = '/admin/'
et que le dossier admin est protégé par htacces, je crois qu'il l'affiche..
Je suis pas sur mais voilà à vérifier, ça m'a pas l'air super sécurisé.
Bonne continuation
Ajouter un commentaire
Réponse
+0
moins plus
Hello,

$theme = "scrin" ;

Il faut ajouter une virgule après la déclaration de la variable.

Je pense que c'est solutionné depuis quand même (;

Un petit conseil en prime : faire attention avec les simple quotes ' et les doules quotes "
des fois, tout inverser peut solutionner des problèmes !

Bonne continuation.
Ajouter un commentaire
Ce document intitulé « Variable dans include » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?