Tri au sein d'une BDD MySQL avec PHP

Fermé
fedely Messages postés 7 Date d'inscription mardi 22 mars 2016 Statut Membre Dernière intervention 7 novembre 2016 - Modifié par crapoulou le 7/11/2016 à 18:40
NHenry Messages postés 15163 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 1 novembre 2024 - 8 nov. 2016 à 19:14
Bonjour à tous,
Bonjour, J'ai un soucis à faire le tri de ma bdd.
J'aimerai à partir de mot clé faire un tri et faire ressortir tous les éléments concernés par ce mot clé.
Du coup voici mon code :
<?php
$link = mysql_connect ('localhost', 'root', '');
if(!$link) {
die('<p> Impossible de se connecter :'.mysql_error().'</p>');
}
$db=mysql_select_db('gestionpatients',$link);
if(!$db) {
die('<p> Impossible d\'utiliser la base : '.mysql_error().'</p>');
}

?>
<p align=’left’ >:: accueil</p>
<form method=POST action="tri_bdd.php">
<input type="text" name="motclef" value=" <?php echo $_REQUEST['motclef'];?>" />
<input type="submit" value="rechercher" />
</form>
<table width=’90%’ border=’1’ >
<tr>
<td class=’intitule’ >id</td>
<td class=’intitule’ >nom</td>
<td class=’intitule’ >prenom</td>
<td class=’intitule’ >naissance</td>
<td class=’intitule’ > </td>
</tr>
<?php
$clause = '';
if (isset($_REQUEST['motclef']))
 { $clause .= " WHERE INSTR(nom,’".$_REQUEST['motclef']."’)";
$clause .= " OR INSTR(prenom,’".$_REQUEST['motclef']."’)"; }
$sql = "SELECT * FROM caissiere ".$clause;
$resultat = mysql_query ($sql);
 while ($tab = mysql_fetch_array ($resultat)) {
echo " <tr>";
echo " <td>$tab[3]</td>";
echo " <td>$tab[4]</td>";
echo " <td>$tab[6]</td>";
echo " <td>$tab[3]</td>";
echo " <td>";
echo " <a href=’eleve_edite.php?id=$id’ >voir</a>";
echo " </td>";
echo " </tr>";
}
echo " </table>";
mysql_close($link);
?>

  </table>



et lorsque j'affiche la page :
Notice: Undefined index: motclef in C:\wamp\www\CHR\modeles\tri_bdd.php on line 14 Call Stack #TimeMemoryFunctionLocation 10.0034147840{main}( )..\tri_bdd.php:0 " />

J'ai besoin d'aide svp, Merci

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.


A voir également:

1 réponse

NHenry Messages postés 15163 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 1 novembre 2024 345
7 nov. 2016 à 19:02
Petit rappel, l'extension mysql est obsolète

Il te manque un paramètre lors de l'appel de la page, je pense :
$_REQUEST['motclef']

Attention, tel qu'implémenté, cet ajout peut permettre l'ajout de code non désiré dans le page, je te conseil d'utiliser htmlspecialchars.
0
d'accord je pense que je vais me mettre au PDO ou mysqli. Néanmoins cela me permettra t'il de régler mon soucis ?
0
NHenry Messages postés 15163 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 1 novembre 2024 345
8 nov. 2016 à 19:14
L'usage de l'extension mysql est vivement déconseillé, car non supportée par les versions récentes de PHP.

Ton problème, comme décrit c'est juste un warning (pas bloquant) signalant qu'une variable n'est pas renseignée.
0