begin process at 2012 05 29 02:24:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

coockies juste ou pas ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

coockies juste ou pas ?

dimanche 20 août 2006 à 12:51:20 | coockies juste ou pas ?

qpzmg

bonjour,

J'ai déja été aider sur ce forum pour la mise au poins de ce script :

<?
 if(!isset($_COOKIE['mckay38_themes'])){
  $theme = "themes/stargate/theme.php";
  include($theme);
 } else {
  $theme = "themes/".$_COOKIE['mckay38_themes']."/theme.php";
  include($theme);
 }
?>

Ce script me permet de chancher le thème via une page de mon site, ou d'ouvrir le thème que je veut si le visiteur n'a pas changé le thème donc n'a pas créé de coockies.
Jusque la ça marche .

Mais je suis confronté a un problème :

Si je supprime le dossier stargate ($theme = "themes/stargate/theme.php";) et que le visiteur a créé un coockies ayant pour valeurs stargate en changeant de thème, le script ne va pas trouver le dossier et le fichier thème, et va donc afficher une page d'erreur.
 comment faire pour parer cela ?

Je suis débutant et je ne sait pas trop comment faire.

Si vous avez une solution
je suis ouvert a toutes propositions !

Merci d'avance !

dimanche 20 août 2006 à 13:40:10 | Re : coockies juste ou pas ?

Evangun

Bonjour,

et bien dans ton script tu fais :

switch (valeur de ton cookie){
    case 'stargate' :     script qui load la skin stargate;
                                break;
    case 'farscape' :     echo 'c\'est bien mieux cette série ;^)';
                                 script qui load la skin farscape;
                                break;
    default : script de la skin par défaut;
}

pour plus d'infos : va voir sur php.net et cherche switch dans les fonctions.
à+
dimanche 20 août 2006 à 14:15:28 | Re : coockies juste ou pas ?

qpzmg

Si j'ai bien compris, je fait ça :

<?
switch ($_COOKIE['mckay38_themes']){
    case 'stargate' :     $theme = "themes/stargate/theme.php";
                                include($theme);
                                break;
    case 'farscape' :    $theme = "themes/farscape/theme.php";
                                include($theme);
                                break;
    default :                $theme = "themes/defaut/theme.php";
                                include($theme);
}
?>

je vais essayer

dimanche 20 août 2006 à 14:47:44 | Re : coockies juste ou pas ?

Guillemouze

en fait je crois pas que ce soit ca ton pb. a mon avis tu devrai plutot faire ca :

<?
$theme_par_defaut = "themes/bob_leponge/theme.php";
$theme = $theme_par_defaut;
 if( isset($_COOKIE['mckay38_themes'])){
  $theme = "themes/".$_COOKIE['mckay38_themes']."/theme.php";
  include($theme);
 }

if (file_exists($theme)) {
    include($theme);
} else {
    include($theme_par_defaut);
}
?>


par contre il faut bien que ton theme par defaut existe, sinon tu aura un message d'erreur. si tu veu qu'il n'inclu pas de fichier si ton theme par defaut n'esiste pas, tu a juste a ajouter la ligne en rouge:

if (file_exists($theme)) {
    include($theme);
} else {
    if (file_exists($theme_par_defaut)) {
        include($theme_par_defaut);
    }
}


dans ce cas la, il essayera de charger le themle du cookie si il existe et qu'il est valide, sinon il chargera le theme par defaut si il est valide.
dimanche 20 août 2006 à 14:49:00 | Re : coockies juste ou pas ?

Guillemouze

heuuuu rectification :

<?
$theme_par_defaut = "themes/bob_leponge/theme.php";
$theme = $theme_par_defaut;
 if( isset($_COOKIE['mckay38_themes'])){
  $theme = "themes/".$_COOKIE['mckay38_themes']."/theme.php";
//  include($theme); //ne pas mettre cette ligne
 }

dimanche 20 août 2006 à 15:11:00 | Re : coockies juste ou pas ?

audayls

Réponse acceptée !
Salut,
Guillemouze cela ne sert à rien de vérifier l'existence du thème puisque qpzmg n'autorisera que ces thèmes grâce au "switch" : "
<?php
if (isset($_COOKIE['mckay38_themes']))
 switch ($_COOKIE['mckay38_themes']){
  case 'stargate': require_once('./themes/stargate/theme.php'); break;
  case 'farscape': require_once('./themes/farscape/theme.php'); break;
  default: require_once('./themes/defaut/theme.php'); break;
 }
?>
"
Sauf si biensur il fait un système automatique dans ce cas il faut mieux utiliser "is_file" car cette fonction est plus rapide que "file_exists" : "
<?php
if (isset($_COOKIE['mckay38_themes']))
 if (is_file(
'./themes/'.$_COOKIE['mckay38_themes'].'/theme.php') require_once('./themes/'.$_COOKIE['mckay38_themes'].'/theme.php');
 else require_once('./themes/defaut/theme.php');
?>
"

For every choice, a consequence (Fable)
dimanche 20 août 2006 à 15:49:54 | Re : coockies juste ou pas ?

Evangun

QPZMG : pour ne pas que tu t'embrouilles, je résume :

tu fais ce que j'ai dit (c'est bien ce que tu as compris) et quand tu supprimes par exemple le thème farscape, tu dois juste effacer cette partie :

    case 'farscape' :    $theme = "themes/farscape/theme.php";
                                include($theme);
                                break;
à+

dimanche 20 août 2006 à 16:21:01 | Re : coockies juste ou pas ?

davwart


Heu...
pour moi, la seule solution valable et valide est celle de qpzmg l
les autres vont fonctionner...maos niveau securité, aie aie aie  !!
ca :
if( isset($_COOKIE['mckay38_themes'])){
  $theme = "themes/".$_COOKIE['mckay38_themes']."/theme.php";
c'es vraiment pas securisée du tout !!

enfin c'est mon avis...

------------------------------------- Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
dimanche 20 août 2006 à 16:24:40 | Re : coockies juste ou pas ?

qpzmg

Merci pour toutes ces réponces...

Je retiens l'idée de audayls :

<?php
if (isset($_COOKIE['mckay38_themes']))
 switch ($_COOKIE['mckay38_themes']){
  case 'stargate': require_once('./themes/stargate/theme.php'); break;
  case 'farscape': require_once('./themes/farscape/theme.php'); break;
  default: require_once('./themes/defaut/theme.php'); break;
 }
?>

Je pence même qu'en faisant un include :

<?php
if (isset($_COOKIE['mckay38_themes']))
 switch ($_COOKIE['mckay38_themes']){
include
('listetheme.php');
  default: require_once('./themes/defaut/theme.php'); break;
 }
?>
et le fichier listetheme.php

<?
  case 'stargate': require_once('./themes/stargate/theme.php'); break;
  case 'farscape': require_once('./themes/farscape/theme.php'); break;
?>
Je retiens cette idée car j'aime bien l'idée de liste.
Encore MERCI


dimanche 20 août 2006 à 16:32:50 | Re : coockies juste ou pas ?

Guillemouze

audayls, c vrai ce que tu dis, mais le but de ma methode etait d'etre un maximum generique, et ainsi qu'il n'ai pas a modifier toutes ses sources pour ajouter un theme.

Par contre, c vrai que ce n'est pas tout a fait securisé. :s

1 2

Cette discussion est classée dans : themes, theme, thème, coockies, stargate


Répondre à ce message

Sujets en rapport avec ce message

PROBLEME DE JOINTURE [ par nougitch ] Bonjour à tous,Je possède 2 tables : 'fiches' et 'themes'.Dans la table 'fiches', il y a un identifiant appelé 'theme_fiche' qui est un nombre faisant theme et popup [ par qpzmg ] bonjour, j'ai ce code ci :  if( $theme == '' || $theme == null) {  $theme = "themes/$theme/theme.php"; include("themes/defaut/theme.php"); } else { Probleme d'accent avec IE [ par warcat ] Tout d'abord bonjour à tous, c'est mon premier message sur ce forum, j'espère que je post ce message où il faut et que je ne vais pas écrire de grosse Ouvertire de page Html a partir d'une liste deroulante [ par melama ] Bonjourje souhaite utiliser trois liste deroulante pour la selection par categorie de carte ainsi le premier liste selectione le theme, la deuxieme le liste deroulante [ par oliv5658 ] Bonjour a tous,  J'ai un probleme pour lequel je trouve pas la solution.J'ai un menu deroulant avec des themes. On en choisi un et une fonction JS ape Tinymce, liaison PHP. [ par xeroxiss ] Bonjour à tous ! Je me permet d'implorer votre aide car après 10 000 recherches je ne trouve pas une solution.J'ai télécharger TinyMce pour éditer des tout les resultats d'une requête dans une même variables [ par xxiv ] Bonjour à tous,Voilà, je fais un moteur de recherche sur des outils pédagogiques.  Les recherches se font en fonctions des 6 affinements possible, don utilisations de plusieurs feuilles de style [ par fouque ] bonjour, j'ai trois feuilles de style dans mon site: le visiteur choisit son style grâce a un menu déroulant. jusque la tout va bien mais s'il choisi UNION et ORDER BY [ par artkap ] Bonjour, j'ai une requête qui porte sur une table produits avec 2 thèmes possibles (theme1 et theme2) et 3 propriétés possibles (propriete1, propriet tinyMCE ne fonctionne pas [ par boubeuch1 ] bonjour, je souhaite mettre une barre d'outil texte dans la partie administrateur de mon site. tinyMCE.init({ mode : "textareas", theme : "advance


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales