par
ghost5922 » 15 mai 2013, 13:50
tu n'as pas efface cette ligne
if(isset($_POST['checkbox'])){$where.=implode($_POST['checkbox'])." and";}
puis ton 2eme form est dans une boucle Oo
si tu veux affiche les <input type="checkbox" name="checkbox[]" value="75">75 selon la requête
test ce code
<?php
require("connect.php");
$dsn="mysql:dbname=".BASE.";host=".SERVER;
try{
$connexion=new PDO($dsn,USER,PASSWD);
}
catch(PDOException $e){
printf("Échec de la connexion : %s\n", $e->getMessage());
exit();
}
$sql="SELECT * from Etablissement order by nomEtablissement";
if(!$connexion->query($sql)) echo "Pb d'accès à la table Etablissement";
else{
?>
<form action="etablissement.php" method="GET">
<select name="nom">
<?php
foreach ($connexion->query($sql) as $row){
echo "<option value=".$row['idEtablissement'].">".$row['nomEtablissement']."</option>";
}
?>
</select>
<input type="submit" value="Rechercher">
</form>
<?php
}
//la parti du haut fonctionne aucun probleme
?>
<?php
$where="";
if(isset($_POST['dpt']) and !empty($_POST['dpt'])){$where.="dpt = '".$_POST['dpt']."' and ";}
if(isset($_POST['nature']) and !empty($_POST['nature'])){$where.="nature = '".$_POST['nature']."' and ";}
if(isset($_POST['checkbox']) and !empty($_POST['checkbox'])){$where.="(dpt='".implode("' or dpt='",$_POST['checkbox'])."') and ";}
if(!empty($where)){$where = 'where '.substr($where, 0, -4);}
;
$sql="SELECT * from Etablissement $where order by nomEtablissement";
if(!$connexion->query($sql)) echo "Pb d'accès à la table Etablissement";
else{
echo "<table><tr><td>NOM D'ETABLISSEMENT</td></tr>";
echo'<form action="" method="POST">
<p>Département</p>';
foreach ($connexion->query($sql) as $row){
echo'<input type="checkbox" name="checkbox[]" value="'.$row['idEtablissement'].'">'.$row['idEtablissement'];
}
?>
<p>Nature</p>
<input type="radio" name="nature"value="1">Université
<input type="radio" name="nature" value="2">Ecole d'ingénieur
<input type="submit" value="Rechercher">
</form>
<?php
echo "<br><a href=\"etablissement1.php?idEtablissement=".$row['idEtablissement'].'">'.'<br/>'.$row['nomEtablissement'];
echo "</table>";
}
?>
</body>
</html>
tu n'as pas efface cette ligne
[php]
if(isset($_POST['checkbox'])){$where.=implode($_POST['checkbox'])." and";}
[/php]
puis ton 2eme form est dans une boucle Oo
si tu veux affiche les <input type="checkbox" name="checkbox[]" value="75">75 selon la requête
test ce code
[php]
<?php
require("connect.php");
$dsn="mysql:dbname=".BASE.";host=".SERVER;
try{
$connexion=new PDO($dsn,USER,PASSWD);
}
catch(PDOException $e){
printf("Échec de la connexion : %s\n", $e->getMessage());
exit();
}
$sql="SELECT * from Etablissement order by nomEtablissement";
if(!$connexion->query($sql)) echo "Pb d'accès à la table Etablissement";
else{
?>
<form action="etablissement.php" method="GET">
<select name="nom">
<?php
foreach ($connexion->query($sql) as $row){
echo "<option value=".$row['idEtablissement'].">".$row['nomEtablissement']."</option>";
}
?>
</select>
<input type="submit" value="Rechercher">
</form>
<?php
}
//la parti du haut fonctionne aucun probleme
?>
<?php
$where="";
if(isset($_POST['dpt']) and !empty($_POST['dpt'])){$where.="dpt = '".$_POST['dpt']."' and ";}
if(isset($_POST['nature']) and !empty($_POST['nature'])){$where.="nature = '".$_POST['nature']."' and ";}
if(isset($_POST['checkbox']) and !empty($_POST['checkbox'])){$where.="(dpt='".implode("' or dpt='",$_POST['checkbox'])."') and ";}
if(!empty($where)){$where = 'where '.substr($where, 0, -4);}
;
$sql="SELECT * from Etablissement $where order by nomEtablissement";
if(!$connexion->query($sql)) echo "Pb d'accès à la table Etablissement";
else{
echo "<table><tr><td>NOM D'ETABLISSEMENT</td></tr>";
echo'<form action="" method="POST">
<p>Département</p>';
foreach ($connexion->query($sql) as $row){
echo'<input type="checkbox" name="checkbox[]" value="'.$row['idEtablissement'].'">'.$row['idEtablissement'];
}
?>
<p>Nature</p>
<input type="radio" name="nature"value="1">Université
<input type="radio" name="nature" value="2">Ecole d'ingénieur
<input type="submit" value="Rechercher">
</form>
<?php
echo "<br><a href=\"etablissement1.php?idEtablissement=".$row['idEtablissement'].'">'.'<br/>'.$row['nomEtablissement'];
echo "</table>";
}
?>
</body>
</html>
[/php]