|
|
|
|
Bonjour,
Je fais un tableau d'utilisateurs en php mais ma liste est longue et je voudrais faire un input text pour rechercher mes utilisateurs selon un critère. Seulement je ne vois pas quelle fonction utiliser pour récupéré mes utilisateurs. Le but étant que lorsqu'on note un nom ou un début de nom mes utilisateurs s'affiche a partir de ce nom ou début de nom ... Pouvez vous m'aider ? merci d'avance.
Je vous montre mon début mon code avec le tableau et mon input text.
?><tr><?php
foreach ($tableau as $val)
{
?><td><?php echo $val['nom']; ?></td><?php
?><td><?php echo $val ['prenom']; ?></td><?php
?><td><?php echo $val ['fonction']; ?></td><?php
?><td><?php echo $val ['mail']; ?></td><?php
?></tr><?php
}
?>
<p>Rechercher un utilisateur : </p>
<form align = "center">
<input type="text" name="<?php$mot?> "hize="20">
<input type="submit" value="Rechercher" alt="Lancer la recherche!">
</form>
Configuration: Windows XP Internet Explorer 7.0
Tu veux que cela ce fasse automatique, ou alors ça ne te dérange pas que la page se recharge pour afficher la liste des pseudo commençant par le critère de recherche ?
|
Pour le faire automatiquement, il faudrait utiliser javascript, ne connaissant pas très bien javascript, je te passe une méthode avec PHP :
<?php
foreach ($tableau as $val)
{
?>
<?php
if( isset($_POST['keyword']) ){
$keyword = $_POST['keyword'];
if (preg_match("#^$keyword#", $val['nom'])){
?>
<td><?php echo $val['nom']; ?></td>
<td><?php echo $val ['prenom']; ?></td>
<td><?php echo $val ['fonction']; ?></td>
<td><?php echo $val ['mail']; ?></td>
<?php
}
else{
}
}
else{
?>
<td><?php echo $val['nom']; ?></td>
<td><?php echo $val ['prenom']; ?></td>
<td><?php echo $val ['fonction']; ?></td>
<td><?php echo $val ['mail']; ?></td>
<?php
}
?>
<?php
}
?>
<p>Rechercher un utilisateur : </p> <form action="#" method="POST"> <input type="text" name="keyword" value="" size="20"> <input type="submit" value="Rechercher" alt="Lancer la recherche!"> </form> heu... bon ya certainement plein d'erreur mais le principe est là... j'ai pas trop le temps là si tu patiente jusqu'à cet aprem' j'auaris le temps de te faire un truc correct JuZa.e3b.org || No man's land, People are strange, & Jesus was a punk ## The Blood's Flowers #Engraved February# Sleepwalking Past Hope |
Bon bah j'ai tester chez moi en créant un tableau vite fait et ça marche bien comme ça :
<?php
$tableau = array();
$tableau[0]['nom'] = "cyber.angel";
$tableau[1]['nom'] = "evuez";
$tableau[2]['nom'] = "chewaka";
$tableau[3]['nom'] = "cestpasmoi";
$tableau[0]['prenom'] = "julien";
$tableau[1]['prenom'] = "elsa";
$tableau[2]['prenom'] = "jerome";
$tableau[3]['prenom'] = "personne";
$tableau[0]['fonction'] = "aucune";
$tableau[1]['fonction'] = "aucune";
$tableau[2]['fonction'] = "aucune";
$tableau[3]['fonction'] = "aucune";
$tableau[0]['mail'] = "machin@machin.com";
$tableau[1]['mail'] = "machin@machin.com";
$tableau[2]['mail'] = "machin@machin.com";
$tableau[3]['mail'] = "machin@machin.com";
?>
<p>Rechercher un utilisateur : </p>
<form action="#" method="POST">
<input type="text" name="keyword" value="" size="20">
<input type="submit" value="Rechercher" alt="Lancer la recherche!">
</form>
<table border="2">
<?php
foreach ($tableau as $val)
{
?>
<?php
if( isset($_POST['keyword']) ){
$keyword = $_POST['keyword'];
if (preg_match("#^$keyword#", $val['nom'])){
?>
<tr>
<td><?php echo $val['nom']; ?></td>
<td><?php echo $val['prenom']; ?></td>
<td><?php echo $val['fonction']; ?></td>
<td><?php echo $val['mail']; ?></td>
</tr>
<?php
}
else{
}
}
else{
?>
<tr>
<td><?php echo $val['nom']; ?></td>
<td><?php echo $val['prenom']; ?></td>
<td><?php echo $val['fonction']; ?></td>
<td><?php echo $val['mail']; ?></td>
</tr>
<?php
}
?>
<?php
}
?>
</table>
JuZa.e3b.org || No man's land, People are strange, & Jesus was a punk ## The Blood's Flowers #Engraved February# Sleepwalking Past Hope |
Rebonjour !
|