Récupération de données PHP, HTML, BDD

Résolu/Fermé
plantbottle - 18 sept. 2012 à 08:31
 plantbottle - 18 sept. 2012 à 09:30
Bonjour,

J'ai une liste déroulante en PHP dépendant d'une BDD. Il y a "a", "b", "c", etc.
Je voudrais que quand l'utilisateur choisi b, sur la page suivant il soit écrit, vous avez choisi b.

Voici le code de ma première page avec la liste:

<!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>Remontée matrice mensuelle label sécurité</title>
</head>

<body>

<?php if(empty($_POST['Anglais'])) //Si Français a été sélectionné, Anglais non selectionné
{
echo " ";
}
else // Si anglais a été sélectionné
{
header('Location: page_2.2.php'); // Alors on ouvre alors page_2.2.php
}
?>

<?php
try
{
// On se connecte à MySQL
	$bdd = new PDO('mysql:host=localhost;dbname=risi', 'root', ' ');
}
catch(Exception $e)
{
// En cas d'erreur, on affiche un message et on arrête tout
	die('Erreur : '.$e->getMessage());
}
//Si tout va bien, on peut continuer

?>
<center> <form name="choix_site" method="post" action="page_3.1.php">

	<label for="site">Choissisez votre site</label><br />
     <select name="site" id="site">

<?php

//On récupére tout le contenu de la table sites
$reponse = $bdd->query('SELECT * FROM sites');

//On affiche chaque entrée une à une
while ($donnees = $reponse->fetch())

{
?>
           <option value="<?php echo $donnees['nom']; ?>"> <?php echo $donnees['nom']; ?></option>
<?php
}

?> 
<input type="submit" name="submit" Value="Valider"> </center>
<!-- Bouton de validation du choix du site -->

</form>
<br/>


Et pour récupérer le choix de la personne sur la page suivante j'ai essayé ça:

<?php
if (isset($_POST['choix_site'])){
echo Votre site est." ".$_POST['choix_site'];
}
else {
	echo 'Les variables ne sont pas déclarées';
	 }
?>


Mais ça ne fonctionne pas.
Quelqu'un pourrait-il m'aider ?
Merci d'avance.

3 réponses

tryan44
Messages postés
1288
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
26 octobre 2014
232
Modifié par tryan44 le 18/09/2012 à 09:06
Salut,

Je n'utilise pas PDO donc je ne saurais vous dire si vous avez un soucis de ce côté la. Néanmoins :
<?php 
//si action de validation et que la variable existe 
if(isset($_POST['submit']) && isset($_POST['site'])){ 
 echo 'Votre site est '.$_POST['site'].''; 
} 
else{ 
 echo 'Les variables ne sont pas déclarées'; 
} 
?>


Une question stupide engendre une réponse stupide!
Une question mal formulé engendre une réponse aléatoire!
1
Utilisateur anonyme
18 sept. 2012 à 09:01
Bonjour

Le PDO a l'air correct.
Par contre, il y a incohérence entre le formulaire et la récupération des données.
Le SELECT s'appelle 'site' mais dans la récupération, tu utilises $_POST['choix_site']. Il faut utiliser $_POST['site'].
'choix_site' est le nom du formulaire. Il est inutile et on ne récupère aucune variable $_POST lui correspondant.
1
Merci beaucoup pour votre aide, mon problème est résolu.
0