Comment générer un tableau dont les données dépendent d'un formulaire ?

schadomado
Invité n'ayant pas de compte PHPfrance

09 janv. 2019, 18:49

Bonjour,

Je travaille actuellement sur un projet où je dois réaliser un site web. Je rencontre cependant quelques problèmes....



1. Nous avons voulu crée un tableau dont les données dépendent des éléments sélectionnés dans un formulaire. Cependant lorsque nous lançons le formulaire (nous cliquons sur « valider »), l’ordinateur renvoie ‘undifined variable : niveau » pourtant, dans le formulaire, nous avions mis comme onglet déroulant « niveau » et ça marchait très bien (le formulaire est alimenté par une base de donnée et le contenu du tableau dépend également du tableau)….

2. Nous voulons que nous puissions cliquer sur la première donnée du tableau qui renverrait vers un second tableau dépendant de la donnée sélectionnée. Nous voulons donc crée un second formulaire. Mais rien ne marche….

Je vous envoie ci joint notre code.

Merci beaucoup pour votre aide,

<!DOCTYPE html>

<html>

<head>
 <title>Formulaire</title>
 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
</head>

<?php
class Database {
   public static function connect() {
       $dsn = 'mysql:dbname=Essai;host=127.0.0.1';
       $user = 'root';
       $password = '';
       $dbh = null;
       try {
           $dbh = new PDO($dsn, $user, $password,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
           $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
       } catch (PDOException $e) {
           echo 'Connexion échouée : ' . $e->getMessage();
           exit(0);
       }
       return $dbh;
   }
}
?>



<table>
<thead>
<tr>
<th scope="col">Titre</th>
<th scope="col">Langue d'enseignement</th>
<th scope="col">ECTS</th>
</tr>
</thead>
<tbody>
<form method="post" action="cible2.php">
<?php
$dbh = database::connect();
$query= "SELECT UE.Intitule_En, UE.Langue_Enseignement, UE.ECTS  FROM UE join Programme on Programme.ID_Pgm = UE.ID_Pgm where Programme.niveau, Programme.cursus = '" . $_POST ['niveau'] . "','".$_POST['cursus']"'";
$sth = $dbh->prepare($query);
$sth->execute();
while ($courant = $sth->fetch(PDO::FETCH_ASSOC))
{
echo "<tr>";

echo "<td><a href = 'cible2.php'>". $courant['Intitule_En'] . "</a></td>";
echo "<td>" . $courant['Langue_Enseignement'] . "</td>";
echo "<td>" . $courant['ECTS'] . "</td>";

echo "</tr>";

}

?>
</form>

</tbody>
</table>


</body>
</html>

Eléphant du PHP | 301 Messages

16 janv. 2019, 15:07

Bonjour,

Le code est celui du tableau généré à partir du formulaire si j'ai bien compris. Que donne une var_dump sur la variable $_POST? Peut-on voir le code qui permet de récupérer le niveau?