Vous n'êtes pas identifié(e).
Bonjour,
n'étant pas très adroit en programmation je viens demander votre aide vis-à-vis du problème suivant
j'ai 3 pages php donc voici les codes
la une :
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<table width="350" border="1" cellspacing="0" cellpadding="5">
<tr>
<td>ID</td>
<td>Categorie</td>
<td>Detail</td>
</tr>
<tr>
<?php while($categorie=mysql_fetch_array($resultat)){?>
</tr>
<tr>
<td><?php echo $categorie['ID'];?></td>
<td><?php echo $categorie['intitule'];?></td>
<td><a href="plat.php?ID=<?php echo $categorie['ID'];?>">voir</td>
</tr>
<?php } ?>
</table>
</body>
</html>
la deux:
<body>
<table width="400" border="1" cellspacing="0" cellpadding="5">
<tr>
<td>Plat</>
<td>Detail</td>
</tr>
<?php while($plat=mysql_fetch_array($resultat)){?>
<tr>
<td><?php echo $plat['reference'];?></td>
<td><a href="detail.php?reference=<?php echo $plat['reference'];?>">voir</td>
</tr>
<?php } ?>
</table>
</body>
</html>
la 3:
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<table width="350" border="1" cellspacing="0" cellpadding="5">
<tr>
<td>Description</td>
<td>Price</td>
</tr>
<tr>
<?php while($plat=mysql_fetch_array($resultat)){?>
</tr>
<tr>
<td><?php echo $plat['description'];?></td>
<td><?php echo $plat['prix'];?></td>
</tr>
<?php } ?>
</table>
</body>
</html>
sachant que en fonction du choix effectué en page 1 cela donne le contenu de la 2 et en fonction du 2 cela donne le contenu de 3.
Lorsque je test à partir de la une tous ce passe mais lorsque j'utilise je désire inclure ses 3 pages dans une page php et bien dans le cadre 1 il y à effectivement la page 1 mais dans le cadre 2 et 3 il y a ceci: Notice: Undefined index: ID in C:\wamp\www\menu\fiche3.php on line 3
d'avance je vous remercie pour votre aide
Hors ligne
salut,
c'est simple tu utilises un index du tableau $_GET sans en vérifier l'existence ($_GET['id'] le tout dans le fichier fiche3.php à la ligne 3. ce qui est la cas dans la seconde partie de ton code.
je n'ai pas exactement compris ce que tu veux faire, mais il faut toujours vérifier qu'un index existe dans un des tableaux "fournit" par les utilisateurs car tu ne peux être certain que l'url ou le formulaire n'ont pas été bidouillés.
donc utilise isset ou empty pour être certain que ton index existe dans le tableau voulu afin de pouvoir exécuter le code en conséquence (tu le fais aussi pour $_GET['reference'].
Pour info le select * c'est mal (indique explicitement les colonne que tu souhaites, c'est plus clair et cela évite de récupérer des infos inutiles). La guerre des étoiles
@+
Il en faut peu pour être heureux pompompompompompompompompompompom
Hors ligne
yop ,
donc si je comprend bien cela devrait plus ressembler a cela ?
require_once("connectdb.php");
$id = (isset($_GET['id'])) ? $_GET['id'] : 0;
$requete="SELECT reference FROM plat WHERE categorieID='".$id."'";
$resultat=mysql_query($requete);
$plat=mysql_fetch_array($resultat);
Dernière modification par SomeOne (08-09-2010 05:32:32)
Hors ligne
non, car tu n'a pas de valeur pour id et cela ne représente rien !
tu ne fait la requete et sont exploitation que si la variable est présente dans l'url.
@+
Il en faut peu pour être heureux pompompompompompompompompompompom
Hors ligne