Mini Moteur de recherche PHP

Résolu
Sephirus Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   -  
Sephirus Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un léger problème avec un petit moteur de recherche que j'essaye de faire. Mon serveur php ne m'affiche aucune erreur sauf que quand j'effetue ma recherche il ne trouve rien et renvoie direct sur ma page. Voilà le script.

<?php
require "Admin/config.php";

mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);
mysql_select_db(DB_BDD);
if (!empty($_POST))
{
extract($_POST);
$sql = "SELECT * FROM tips WHERE `idlogiciel`='$idlogiciel' AND (`titretips` LIKE '$recherche' OR `contenutips` LIKE '$recherche')";
$req = mysql_query($sql) or die ("Erreur SQL!");
$data=mysql_fetch_assoc($req);
while ($data=mysql_fetch_assoc($req))
{
echo "<p>{$data["titretips"]}<p>";
echo "<p>{$data["contenutips"]}<p>";
}
}
?>


<form method='post' action='recherche.php'>

<select name='idlogiciel'>
<?php
$query = "SELECT `idlogiciel`,`nomlogiciel` FROM logiciels WHERE `archivelogiciels`=0";
$result = mysql_query($query) or die("Erreur récupération des logiciels");
while ($row = mysql_fetch_array($result))
{
echo '<option value="' .$row[0]. '">' .$row[1]. '</option>';
}
?>
</select>

Recherche:
<input type='text' name='recherche' size='40' />
<input type='submit' value='Rechercher !' />

</form>

4 réponses

bissdebrazza Messages postés 2065 Date d'inscription   Statut Contributeur Dernière intervention   712
 
Bonjour!
essayes avec ceci:
<?php 
require "Admin/config.php"; 

mysql_connect(DB_HOST,DB_LOGIN,DB_PASS); 
mysql_select_db(DB_BDD); 
if (!empty($_POST)) 
{ 
extract($_POST); 
$sql = "SELECT * FROM tips WHERE  idlogiciel ='$idlogiciel' AND ( titretips  LIKE '%$recherche%' OR  contenutips  LIKE %'$recherche%')"; 
$req = mysql_query($sql) or die ("Erreur SQL!");	
$data=mysql_fetch_assoc($req); 
while ($data=mysql_fetch_assoc($req)) 
{ 
echo "<p>{$data["titretips"]}<p>"; 
echo "<p>{$data["contenutips"]}<p>"; 
} 
} 
?> 


<form method='post' action='recherche.php'> 

<select name='idlogiciel'> 
<?php	
$query = "SELECT idlogiciel, nomlogiciel FROM logiciels WHERE  archivelogiciels = 0 "; 
$result = mysql_query($query) or die("Erreur récupération des logiciels"); 
while ($row = mysql_fetch_array($result)) 
{ 
echo '<option value="' .$row[0]. '">' .$row[1]. '</option>'; 
} 
?> 
</select> 

Recherche: 
<input type='text' name='recherche' size='40' /> 
<input type='submit' value='Rechercher !' /> 

</form>
0
Sephirus Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   3
 
C'est bon solution trouvée entre temps ;) Merci de ton aide quand même =)
0
tiralia Messages postés 1577 Date d'inscription   Statut Membre Dernière intervention   256
 
quand vous trouvez une solution, merci de la poster^^

Vous venez chercher de l'aide, et ceux qui ont le même problème n'ont pas la réponse....
0
Sephirus Messages postés 95 Date d'inscription   Statut Membre Dernière intervention   3
 
Voilà la soluc !!

<?php

require "./Admin/config.php";
mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);
mysql_select_db(DB_BDD);

if (isset($_POST['recherche']))
{
$recherche = $_POST['recherche'];
$recherche = explode(" ", $recherche);
$nb=count($recherche);

$query = 'SELECT distinct titretips,contenutips,idtips FROM tips WHERE (titretips LIKE "%'.$recherche[0].'%" OR contenutips LIKE "%' .$recherche[0]. '%") ';
for($i=1 ; $i<$nb; $i++)
{
$query.='AND (titretips LIKE "%'.$mot[$i].'%" OR contenutips LIKE "%' .$mot[$i]. '%") ';
}
$query.= 'AND idlogiciel="' .$_POST['idlogiciel']. '" ORDER by titretips ASC';
$result = mysql_query($query);

}
?>
0