Help - Search - Member List - Calendar
Full Version: fonction de recherche
Rastaba's Forum > Informatique en Général > Programmation
Grincheu
salut tous
je voudrais faire page de recherche pour mon site
http://stephane2m.free.fr/site2steph/plugi...rame.php?lng=fr
c pour ma culture chui pas programmateur, un peu bidouilleur, bref
g donc fais ceci :
recherche.php

<form method="post" action="resultat.php">

Entrez un mot clé pour recherche dans la base de données :<br>

<input type="text" name="demande" size="15">

<input type="submit" value="Rechercher" alt="Lancer la recherche!">

</form>

un petit forumlaire avec un post

resultat.php
me pose des prob et surtout l'écriture en php de la requete sql


// on crée la requête SQL
$requete = 'SELECT domaine, sousdomaine, mot, resume, lien FROM informatique WHERE (domaine ="$demande")';

// on envoie la requête
$recherche = mysql_query($requete);

// Récupération du nombre d'enregistrements
$nombre_donnée = mysql_num_rows( $recherche );

et le prob c qu'il me dit qu'il y a rien alors que c le contraire.

quand je fais une requete très precise ça marche, exemple :
$requete = 'SELECT domaine, sousdomaine, mot, resume, lien FROM informatique WHERE domaine = "hardware" LIMIT 0, 30';
// Execution de la requête
$resultat = requete( $requete );

une idée ?
merci d'avance
steph
krichou
essaie comme suit....

CODE
$demande = $HTTP_POST_VARS['demande'];

// parcequ'il faut bien recuperer ta variable quelque part....

//ensuite....
CODE
$requete = mysql_query ("SELECT domaine, sousdomaine, mot, resume, lien FROM informatique WHERE (domaine ='$demande') ");
$resultats = mysql_query($requete);
mysql_close();



et dans ton fichier de recuperationtu recupère la variable resultat avec un GET...

mais en fait, ça dépend si le resultat que tu attend comporte plusieurs données...
dans ce cas, il faut que tu envoie le tout de manière a pouvoir les utiliser séparément avec un peu de code du style....

CODE
for ($i=0; $i < $nrows; $i++) {
$row = mysql_fetch_array($requete);

$resultat .= "&domaine".$i."=".urlencode(utf8_encode($row['domaine']))
  ."&sousdomaine".$i."=".urlencode(utf8_encode($row['sousdomaine']));

}

mysql_close();


je suis pas sur a 100% de ce que j'ecris, je suis pas un c****....
enjoy



LOL le forum censure le mot C.R.A.C.K.
sont cons ces ricains !!!

sinon, je viens de faire un petit surf sur ton site et je vois que tu cherche a importer des données Access sous MySQL....
alors je connais pas asser access, mais il me semble que tu as moyen d'exporter les données vers un tableau excel, que tu enregistre ensuite sous format texte csv...
puis une jolie petite page de php te permettra d'importer ce csv dans MySQL tout seul comme un grand...
si tu fait cette methode mais que tu as du mal pour le php chope moi, je dois encore avoir le miens qui traine quelque part....
a+ steph...

au fait je sais pas si je t'ai mis au courant pour CECI !!!
tu es convié bien sur...(vincent aussi tongue.gif )
++
Grincheu
merci krichou je vais regarder cela ce soir.

pour la lan je pourrais pas venir (spetacle copine + anniv maman + travaux maison )
c bocou mad.gif
vincent est incorporé de force donc ....

encore merci @ +
et a très très bientôt !!! smile.gif

tcho
Grincheu
biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif

yahoo ça marche !!!!!!!!!!!!!!!!!!

merci Krichou

t le meilleur (chui pas mauvais non plus)

CODE


<?php

   // Connexion à la base de données
   require 'database.inc.php3';
   
   $demande = $HTTP_POST_VARS['demande'];

// on crée la requête SQL
$requete = mysql_query ("SELECT domaine, sousdomaine, mot, resume, lien FROM informatique WHERE (domaine ='$demande') or (sousdomaine ='$demande') or (mot = '$demande') or (resume = '$demande') or (lien = '$demande') ");
 // Récupération du nombre d'enregistrements
   $nombre_donnée = mysql_num_rows( $requete );
    // Affichage du nombre de donnée
   echo 'Il y a ' . $nombre_donnée . ' donnée' . ($nombre_donnée > 1 ? 's' : '' );
   

?> <tr>
 <td><h2>domaine : </h2></td>
 <td><h2>categorie : </h2></td>
 <td><h2>sujet : </h2></td>
 <td><h2>résumé : </h2></td>
 <td><h2>lien : </h2></td>
  </tr>
 <?
   // boucle d'affichage
   while( $row = mysql_fetch_array( $requete ) ) {
     ?></td><td><? echo $row['domaine'];
      ?></td><td><? echo $row['sousdomaine'];
   ?></td><td><? echo $row['mot'];
   ?></td><td><? echo $row['resume'];
   ?></td><td><a href="<? echo $row['lien'];?>" target="_blank">lien</a></td></tr><?
   
   }
?>


maintenant faut permettre les fautes d'orthographe et les demi mots
!!!!
krichou
héhé content que tu y arrive !! tongue.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.