Bonjour à tous,
Je débute en php et j'ai un petit problème d'execution correcte d'un script PHP. J'expose le problème et ensuite le code.
Dans un seul fichier, j'appelle plusieurs rubriques différentes au sein du même fichier. L'URL est de type :
page01.php?info=php&rub=1
J'ai essayé de faire un systeme afin que si un internaute modifie l'URL en remplaçant ça affiche un message d'erreur et de la meme manière pour Mais ça ne fonctionne qua dans un seul cas et pas dans le deuxième. Je pense que la déclaration de mes variables d'affichage n'est pas correcte et je ne sais pas trop comment m'en sortir. Voici le code ci-dessous, je precise que mes rubriques sont des tables que j'affiche avec du texte dedans....
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
<html>
<head>
<title>Page01 Avec Menu Déroulant</title>
<script language='javascript'>
function chgpage(formulaire)
{
if (formulaire.listepages.selectedIndex != 0)
{ location.href = formulaire.listepages.options[formulaire.listepages.selectedIndex].value; }
}
</script>
</head>
<body>
<center>
<?php
// ==================================
// >>> CONFIGURATION DU MENU DEROULANT <<<
// ==================================
$selectrapide="<select name='listepages' size=1 onChange='chgpage(this.form)'>
<option>Choix de la Rubrique</option>
<option value='page01.php?info=php&rub=1'>- Rubrique 1 -</option>
<option value='page01.php?info=php&rub=2'>- Rubrique 2 -</option>
<option value='page01.php?info=php&rub=3'>- Rubrique 3 -</option>
<option value='page01.php?info=php&rub=4'>- Rubrique 4 -</option>
<option value='page01.php?info=php&rub=5'>- Rubrique 5 -</option>
<option value='page01.php?info=php&rub=6'>- Rubrique 6 -</option>
<option value='page01.php?info=php&rub=7'>- Rubrique 7 -</option>
<option value='page01.php?info=php&rub=8'>- Rubrique 8 -</option>
</select>";
// =====================================
// >>> DEFINITIONS DES VARIABLES D'AFFICHAGE <<<
// =====================================
$info=$_GET['info'];
$pageinfo=$_SERVER['PHP_SELF'];
$fichierpageinfo=basename($pageinfo);
$rub=$_GET['rub'];
$pagerub=$_SERVER['PHP_SELF'];
$fichierpagerub=basename($pagerub);
if ($pageinfo <> "") {
if ($fichierpageinfo=='page01.php')
{ $affpageinfo='&info=$info'; } else { $affpageinfo=""; }
}
if ($pagerub <> "") {
if ($fichierpagerub=='$affpageinfo')
{ $affpagerub='&rub=$rub'; } else { $affpagerub=""; }
}
// ===========================================
// >>> CHOIX DE LA PAGE PRINCIPALE <<<
// ===========================================
if ($info == "php") {
// ===========================================
// >>> CONFIGURATION DE LA RUBRIQUE 1 <<<
//============================================
if ($rub == "1") {
$affpagerub.= blabla....
$affpagerub.= "<tr>
<td align='center'> IMAGE 1 </td>
<td align='center'> IMAGE 1 BIS</td>
<td align='center'> IMAGE 1 TER</td>
</tr>";
$affpagerub.= etc etc....
}
}
// ================================
// >>> FIN DE CHOIX DE LA PAGE PHP <<<
// ==================================
// =============================================================
// >>> MESSAGE ALERTE SI ON MET AUTRE CHOSE QUE 'php' et 'rub' DANS L'URL <<< -- -- -- -- -- --
// =============================================================
} else {
$affpagerub.= "<table width='100%' border='0' cellspacing='0' cellpadding='0'>";
$affpagerub.= "<tr><td height='100%' align='center'> </td></tr>";
$affpagerub.= "<tr><td height='50%' align='center'><b><font size='6'>ERREUR 404</font></b></td></tr>";
$affpagerub.= "<tr><td height='100%' align='center'><b><font size='4'>Desole la page que vous demandez n'existe pas.<br>Vous allez etre redirigé vers la page d'accueil du site.<br>Merci de votre comprehension.</font></b></td></tr>";
$affpagerub.= "<script>setTimeout('location=\"index.php\"',3000)</script>";
$affpagerub.= "</table>";
}
// ============================================
// >>> AFFICHAGE DE LA RUBRIQUE SELECTIONNEE <<<
// ============================================
echo "$affpagerub";
?>
</center>
</body>
</html> |
Mon problème est que si je change rub=1 par rub=10 dans l'URL mon message d'alerte ne s'affiche pas alors qu'il s'affiche lorsque le modifie info=php par autre chose. Je pense que je me trompe dans la définition de mes variables d'affichage et je ne sais pas comment résoudre ce problème.
Merci de votre aide
Partager