Page 1 sur 1
Champ Contient
Posté : 29 avr. 2006, 12:48
par Dom!
Bonjour à tous !
J'effectue une reherche dans ma base de donnée avec un petit formulaire qui contient un champ critere....
Le principe est simple si critere = un champ de ma base il m'affiche un tableau avec les résultats. Mon soucis c'est qu'il m'affiche le résultat que si c'est égal à la lettre pret ! quelle argument dois je utiliser pour lui dire de m'afficher le résultat si un mot de ma base contient critere ????
par exemple : critere = 'par'
Je veux qu'il m'affiche paris, parisi, parisot...
Merci pour votre aide
Posté : 29 avr. 2006, 12:57
par Vaedan
Voici la requête SQL. Il te faut utiliser LIKE au lieu de '=' puis encadrer ton critère par %. % est un 'Joker.
Code : Tout sélectionner
SELECT tes_champs FROM ta_table WHERE critere LIKE '%$critere%'
Et le code PHP :
$critere = 'par';
mysql_query( "SELECT tes_champs FROM ta_table WHERE critere LIKE '%$critere%'" );
Posté : 30 avr. 2006, 16:37
par Dom!
Ok j'ai fais ce script :
<?
$criteres= $_POST ['criteres'];
$sqlmatch = ("select * from clients where nom_client LIKE '%$criteres%'" );
mysql_query($sqlmatch) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
if ($resselectmatch = mysql_query($sqlmatch)) {
$selectmatchs = mysql_fetch_array($resselectmatch);}
print '<tr bgcolor="#0099FF" '.$color.'>
<td>'.$selectmatchs["nom_client"].'</td>
<td>'.$selectmatchs["numero"].'</td></tr>';
?>
Par contre il m'affiche qu'une ligne comment faire pour lui dire de m'afficher tous les enregistrements dans le tableau ? par exemple j'ai dix enregistrements il me mettra qu'un !!!
Mercii
Posté : 30 avr. 2006, 17:36
par Truc
Tu sembles oublier l'existence des boucles
suis les liens dans le code pour avoir des exemples.
Posté : 30 avr. 2006, 17:45
par Dom!
Effectivement en rajoutant cela :
if ($resselectdip = mysql_query($sqlmatch)) {
while ($selectdip = mysql_fetch_array($resselectdip))
{
ca marche nikel !!!
Parfaiiiit merciiiiiii
J'édite mon post pour vous demander comment faire pour indiquer que la recherche ( critere ) soit faite sur 2 champs de ma base de donnée... par exemple sur le numer et le nom ! est ce possible ????? merciiii
Posté : 30 avr. 2006, 19:10
par Truc
C'est possible et très facile mais il faut pour ça comprendre le fonctionnement des requetes et tu sauras exactement comment inclure une vérification sur deux champs.
Tu as une requete sur un champ suffit d'ajouter le 2ème, je suis sûr que tu as déjà effectué une telle requête avant.

Posté : 01 mai 2006, 19:14
par Dom!
Ok ok j'ai trouvé merci pour votre aide !!!
