Aide intégration PHP + SQL

Fermé
Hugo122413 - 13 mai 2022 à 16:00
yg_be Messages postés 23427 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 14 janvier 2025 - 13 mai 2022 à 16:58
Bonjour,

lorsque j'intègre une liste déroulante pour choisir l'ordre de tri d'un tableau, et que je récupère le choix sélectionné grâce à la commande
$tri_souhaité = $bdd->quote($_POST['tri_souhaité']);
il s'avère que lorsque que j'essaie d'intégrer cette variable à la requête SQL, la ligne
ORDER BY $tri_souhaité ASC, N° ASC");
est toute simplement ignorée
Besoin d'aide avant dimanche svp




<html>
<meta charset="utf-8" />

<head>
<title>Liste des membres</title>
<link rel="stylesheet" type="text/css" href="AAHH.css">
</head>

<body>
<style>
body {
background-color: #9CC;
}
</style>
<ul class="back">
<li><a href="base.php">Retour au menu</a></li>
</ul>
<?php
session_start();
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$bdd->exec("set names utf8");
if ($bdd == NULL)
echo "Problème de connection";

if (isset($_SESSION['login'])) {
if(isset($_POST['tri_souhaité'])){
$tri_souhaité = $bdd->quote($_POST['tri_souhaité']);

echo "<h1><em>Tableau de bord des employés </em></h1><BR>";
$req = $bdd->query("SELECT *, N°, NOM, SUM(NOMBRE_HEURE) as TOTAL_HEURE , AVG(NOMBRE_HEURE) AS MOYENNE_HEURE
FROM
(SELECT NOM, N°
FROM employe) AS t1

NATURAL JOIN

(SELECT NOMBRE_HEURE FROM tache GROUP BY EMPLOYE) AS t2
GROUP BY N°

ORDER BY $tri_souhaité ASC, N° ASC");

?>

<div class=ListeProjet>
<table>
<tr>
<th>N° d'employé</th>
<th>Nom</th>
<th>Maximum d'heure</th>
<th>Heure moyenne</th>
</tr>

<?php
while ($tuple = $req->fetch()) {

echo ("<tr>");
echo ("<td>" . $tuple['N°'] . "</td>");
echo ("<td>" . $tuple['NOM'] . "</td>");
echo ("<td>" . $tuple['TOTAL_HEURE'] . "</td>");
echo ("<td>" . $tuple['MOYENNE_HEURE'] . "</td>");
echo ("</tr>");
}
}
?>
</table>
</div>


<form method="post" action="test.php">
<p>
<select name="tri_souhaité">
<option value=N°>N° d'employé</option> <BR>
<option value=NOM>Nom d'employé</option> <BR>
<option value=TOTAL_HEURE>Maximum d'heures</option> <BR>
<option value=MOYENNE_HEURE>Moyenne des heures</option> <BR>
<input type="submit" value="Choisir le tri du tableau" />
</p>
</form>

<form method="post" action="base.php">
<p2>
<input type="hidden" name="disconnect" value="yes">
<input type="submit" value="Deconnection" />
</p2>
</form>
<?php
} else {
?>
<h1>Veuillez entrer vos identifiants</h1>
<form method="post" action="base.php">
<p>
<input type="text" name="login" required>
<input type="password" name="pass" required>
<input type="submit" value="Envoyer" />
</p>
</form>
<?php
}
?>
</body>

</html>
            
                
A voir également:

2 réponses

jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 4 727
13 mai 2022 à 16:57
Bonjour
Pour commencer, retire tous les caractères accentués dans le nom de tes variable PHP et dans les attributs name de ton HTML...
0
yg_be Messages postés 23427 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 14 janvier 2025 Ambassadeur 1 559
13 mai 2022 à 16:58
bonjour,
as-tu testé la requête SQL hors PHP?
0