Vous n'êtes pas identifié(e).
Pages :: 1
Bonsoir,
j'ai lu l'article http://www.phpdebutant.org/article68.php de bout en bout et je cale sur la dernière partie du code
// On définit le tableau contenant les pages autorisées
// ----------------------------------------------------
$pageOK = array('news' => 'news.php',
'accueil' => 'accueil.php');
// On teste que le paramètre d'url existe et qu'il est bien autorisé
// -----------------------------------------------------------------
if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) {
include($pageOK[$_GET['page']]); // Nous appelons le contenu central de la page
} else {
include('accueil.php'); // Page par défaut quant elle n'existe pas dans le tableau
}
?>
je ne comprends pas cette partie là :
Le commentaire indique quand elle n'existe pas dans le tableau, mais là elle a bien ete définie....
Donc en gros si j'essaye de faire index.php?page=blabla il doit m'inclure la page "accueil.php"
Seulement moi il la met tout le temps, il n'y aurait pas une manière de faire une redirection vers une autre page plutot qu'un include ?
Merci pour votre aide
Dernière modification par Thomas (12-06-2009 09:34:49)
Hors ligne
Saluton,
L'ambigüité du français te joue encore un de ces mauvais tours.
Dans
Page par défaut quantd elle n'existe pas dans le tableau
(on passera obligeamment sur l'orthographe approximative) «elle» se réfère à l'index nom de page dans $_GET['page'] et non à la page d'acceuil, d'où ta méprise. Mais la phrase est, en outre, mal tournée, je te le concède volontiers.
Comme quoi, lorsque l'on me reproche de me montrer un peu trop intransigeant sur la syntaxe, la sémantique la grammaire et l'orthographe, on devrait garder présent à l'esprit que le but de ces codifications du langage c'est de veiller, au mieux, si tout le monde les respecte, à la compréhension mutuelle entre les interlocuteurs.
Il s'agit, après tout, de notre protocole humain de communication.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Donc en gros si j'essaye de faire index.php?page=blabla il doit m'inclure la page "accueil.php"
FAUX !!!!!
Pour avoir l'affichage de ta page accueil.php, il faut que ton adresse soit index.php?page=accueil [tel que tu l'as défini dans ton array]
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Maljuna Kris > C'est vrai c'est pas forcément clair, mais bon je pense avoir compris
Alnoss>En fait ce que je voulais dire plutôt : c'est que si quelqu'un essaye d'inclure une autre page (qui n'est pas dans le array) ca va m'inclure la page accueil.php (qui elle sera définie par contre)
Comme solution temporaire j'ai supprimé juste cette partie et ca marche très bien, mais est ce que c'est bon quand même ?
Dernière modification par Thomas (12-06-2009 09:35:13)
Hors ligne
Comme solution temporaire j'ai supprimé juste cette partie et ca marche très bien, mais est ce que c'est bon quand même ?
Ça marche très bien, c'est à dire ?
Que se passe-t-il si quelqu'un saisit une nom de page qui n'existe pas ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Thomas a écrit :Donc en gros si j'essaye de faire index.php?page=blabla il doit m'inclure la page "accueil.php"
FAUX !!!!!
Pour avoir l'affichage de ta page accueil.php, il faut que ton adresse soit index.php?page=accueil [tel que tu l'as défini dans ton array]
Non, non, si l'on rentre un nom de page absent de l'array le esle final affiche la page d'accueil.
Ce serait aujourd'hui, je proposerais probablement de gérer cela plutôt avec un tableau associatif.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Thomas a écrit :Comme solution temporaire j'ai supprimé juste cette partie et ca marche très bien, mais est ce que c'est bon quand même ?
Ça marche très bien, c'est à dire ?
Que se passe-t-il si quelqu'un saisit une nom de page qui n'existe pas ?
Si quelqu'un veut afficher index.php?page=blablabla la requête ne s'exécute pas, il ne se passe rien, la page ne change pas je n'ai pas non plus de message d'erreurs. C'est comme si j'ouvrais index.php
Pourquoi on n'est pas obliger d'inclure une page, on ne pourrais pas faire une sorte d'echo en disant "cette page n'existe pas" ou alors rediriger vers une autre page du site
Dernière modification par Thomas (12-06-2009 10:30:04)
Hors ligne
Le problème de ce genre de situation c'est qu'il faut éviter de donner trop d'infos à d'éventuels hackers, tout en soignant les vrais clients.
Il faut réfléchir, dans quelles conditions un internaute franc du collier peut-il se retrouver à demander l'affichage d'une page inexistante ou non autorisée ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Le problème de ce genre de situation c'est qu'il faut éviter de donner trop d'infos à d'éventuels hackers, tout en soignant les vrais clients.
Il faut réfléchir, dans quelles conditions un internaute franc du collier peut-il se retrouver à demander l'affichage d'une page inexistante ou non autorisée ?
Normalement il peut pas, ca sera forcément l'internaute qui devra taper le nom a la suite de la page. Après tous les utilisateurs ne sont pas aussi "lambda" que ca, je le sais
Hors ligne
Pages :: 1