Faire une recherche

ViPHP
ViPHP | 2291 Messages

14 août 2006, 19:42

Bonsoir,

J'ai une page avec +/- 100 enregistrement et je voudrais créé une fonction de recherche.
Cette fonction se ferais à partir de la référence de chaque entré, mais je voudrais que quand la recherche est positive ne s'affiche que la référence rechercher comment faire cela ?

D'avance merci
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Invité
Invité n'ayant pas de compte PHPfrance

14 août 2006, 20:12

si je comprend tu veux faire une recherche dans ta base de donnees c ca ?

ViPHP
ViPHP | 2291 Messages

14 août 2006, 20:12

si je comprend tu veux faire une recherche dans ta base de donnees c ca ?
OUi :lol:
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Mammouth du PHP | 991 Messages

14 août 2006, 20:35

alors voici le code pour la recherche a toi de l adapter a ton site:
mysql_query("SELECT * FROM nom_de_ta_table WHERE nom_du_champ_1 LIKE '%" . htmlentities($_GET['motclef']) . "%' OR nom_du_champ_2 LIKE '%" . htmlentities($_GET['motclef']) . "%'"); 
en esperant que ca t aide ...
DevOps, Symfony4, Hoa

ViPHP
ViPHP | 2291 Messages

14 août 2006, 21:38

alors voici le code pour la recherche a toi de l adapter a ton site:
mysql_query("SELECT * FROM nom_de_ta_table WHERE nom_du_champ_1 LIKE '%" . htmlentities($_GET['motclef']) . "%' OR nom_du_champ_2 LIKE '%" . htmlentities($_GET['motclef']) . "%'"); 
en esperant que ca t aide ...
Merci juste un truc encore comment faire pour que le resultat s'affiche soit en rouge soit dans une autre page ?

D'avance merci
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Avatar du membre
ViPHP
ViPHP | 3008 Messages

14 août 2006, 21:44

Il te suffit de mettre un style (couleur rouge) au résultat de ta requête.

ViPHP
ViPHP | 2291 Messages

14 août 2006, 21:46

Il te suffit de mettre un style (couleur rouge) au résultat de ta requête.
Oui merci, mais je ne sais pas comment faire pour affiché le résultat ? de cette recherche
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Avatar du membre
ViPHP
ViPHP | 3008 Messages

14 août 2006, 21:49

Dans ce cas il faut que tu regardes les bases du php/mysql avant de poursuivre plus loin.

http://www.phpdebutant.org/article66.php

ViPHP
ViPHP | 2291 Messages

14 août 2006, 21:53

Dans ce cas il faut que tu regardes les bases du php/mysql avant de poursuivre plus loin.

http://www.phpdebutant.org/article66.php
Je sais comment affiché les données d'une table se que je veux dire c'est que le bouton recherche est sur la page qui affiche tout les résultat, et se que je ne sais pas c'est comment faire pour que quand l'utilisateur clique sur envoyer il soit dirigé sur la page de résultat ou alors encore mieux que la ligne rechercher s'affiche en rouge dans le tableau ?
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Eléphant du PHP | 184 Messages

14 août 2006, 22:03

MATCH pour MySQL est très intéressant aussi.
Image

Eléphant du PHP | 124 Messages

15 août 2006, 02:41

La faut programmer un ptit prog de recherche dans chaque resultat de la requête. Preg_replace sera ton ami !

Mammouth du PHP | 991 Messages

15 août 2006, 09:12

+1
DevOps, Symfony4, Hoa

ViPHP
ViPHP | 2291 Messages

15 août 2006, 11:31

+1
Sa aide beaucoup se genre de commentaire
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 août 2006, 12:19

encore mieux que la ligne rechercher s'affiche en rouge dans le tableau
Pas sûr que ce soit mieux de tout afficher et de faire reortir les resultats positifs... autant n'afficher que ceux-ci :wink:

Sinon quel est réelement ton problème... tu dis savoir lire les données d'une table mais pas celles renvoyées par la requête de recherche qui n'est pourtant pas différente pour la lecture. :-k

Pour l'affichage sur une page à part suffit de le préciser dans l'action de ton formulaire.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 2291 Messages

15 août 2006, 12:24

encore mieux que la ligne rechercher s'affiche en rouge dans le tableau
Pas sûr que ce soit mieux de tout afficher et de faire reortir les resultats positifs... autant n'afficher que ceux-ci :wink:

Sinon quel est réelement ton problème... tu dis savoir lire les données d'une table mais pas celles renvoyées par la requête de recherche qui n'est pourtant pas différente pour la lecture. :-k

Pour l'affichage sur une page à part suffit de le préciser dans l'action de ton formulaire.
Oui regarde j'ai mon code qui va chercher les resultat de la TABLE (facile)
/* connection à la DB */
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$select = 'SELECT ref,nom,adr,rem,tech,date,tel FROM prestation_septembre_2006';

$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);



// si on a récupéré un résultat on l'affiche.
if($total) {
    // debut du tableau
    echo '<center><table border="0,5" bgcolor="#000080">'."\n";
        /* première ligne on affiche les titres ref,nom,adr,rem,tech,date,tel dans 7 colonnes */
        echo '<tr>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Réf Client</font></b></td>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Nom</font></b></td>';
                echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Adresse</font></b></td>';
        echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Remarques</font></b></td>';
                echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Téléphone client</font></b></td>' ;
                echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Date</font></b></td>' ;
                echo '<td bgcolor="#0000FF" align="center"><b><font size="2" color="#FFFFFF">Nom du technicien</font></b></td>' ;

                echo '</tr>'."\n";
    // lecture et affichage des résultats sur 7 colonnes, 1 résultat par ligne.
    while($row = mysql_fetch_array($result)) {
        echo '<tr>';
        echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["ref"].'</font></td>';
        echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["nom"].'</font></td>';
                echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["adr"].'</font></td>';
        echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["rem"].'</font></td>';
                echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["tel"].'</font></td>';
                echo '<td bgcolor="#FFFFFF" nowrap><font size="2">'.$row["date"].'</font></td>';
                echo '<td bgcolor="#FFFFFF"><font size="2">'.$row["tech"].'</font></td>';
                echo '</tr>'."\n";

    }
    echo '</table></center>'."\n";
    // fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result($result);

?>
Mais dans ma petite tête :boire4: (et la solution est surement bête) je n'arrive pas voir comment intégrée un input ou autre recherche qui ne m'afficherais que la ligne rechercher la recherche se ferais sur une référence.
Je sais que je pourrais dans le cas ci faire un ORDY ou SELECT mais je ne sais pas comment relier mon input à cette solution
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.