[RESOLU] Problème avec php7 : $page = $_GET["page"];

Petit nouveau ! | 7 Messages

13 oct. 2018, 00:25

Bonjour,
J'ai l'habitude de mettre plusieurs pages dans un seul fichier.
Mais depuis le passage à php 7, mes pages affichent une erreur : Notice: Undefined index

Dans l'exemple ci-dessous, sur index.php, il n'y a pas encore de variable dans l'adresse url, cela affiche donc une erreur.
Pas sur les pages secondaires où la variable est récupérée via l'adresse url.

Code : Tout sélectionner

<!doctype html> <html lang="fr"> <head> <meta charset="utf-8"> <title>Page numéro : <?php $page= $_GET["page"]; echo $page; ?></title> </head> <body> <a href="index.php">Page 1</a> - <a href="index.php?page=2">Page 2</a> - <a href="index.php?page=3">Page 3</a> <?php $page = $_GET["page"]; if ($page=='2') {echo '<h1>Ma page 2</h1>';} elseif ($page=='3') {echo '<h1>Ma page 3</h1>';} else {echo '<h1>Ma page 1</h1>';} ?> </body> </html>
Comment faire pour ne plus avoir ce message d'erreur ?

Petit nouveau ! | 7 Messages

13 oct. 2018, 11:39

J'ai modifié un peu, mais cela affiche toujours undefined index:page dans le title à la ligne 7 :

Code : Tout sélectionner

<!doctype html> <html lang="fr"> <head> <meta charset="utf-8"> <title>Page numéro : <?php $page = $_GET["page"]; // Recup valeur depuis l'url. Mais affiche undefined sur la page d'accueil (dans php7) echo $page; ?> </title> </head> <body> <a href="./">Page 1</a> - <a href="index.php?page=2">Page 2</a> - <a href="index.php?page=3">Page 3</a> <?php if ($page=='2') {echo '<h1>Ma page 2</h1>';} elseif ($page=='3') {echo '<h1>Ma page 3</h1>';} else {echo '<h1>Ma page 1</h1>';} ?> </body> </html>

Mammouth du PHP | 2703 Messages

13 oct. 2018, 12:35

if(isset($_GET["page"])){
$page = $_GET["page"];
}
else{
$page = 1;
}

et il faudrait aussi contrôler le contenu de $_GET["page"] pour vérifier que cela contienne bien une valeur attendue et non un code pour pirater le site.

Petit nouveau ! | 7 Messages

13 oct. 2018, 14:52

Merci ! Ca marche !