Mini Moteur de recherche PHP

Résolu/Fermé
Sephirus Messages postés 95 Date d'inscription mardi 17 mars 2009 Statut Membre Dernière intervention 25 avril 2013 - 30 oct. 2009 à 10:31
Sephirus Messages postés 95 Date d'inscription mardi 17 mars 2009 Statut Membre Dernière intervention 25 avril 2013 - 16 déc. 2009 à 10:48
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 2064 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 714
30 oct. 2009 à 11:10
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 mardi 17 mars 2009 Statut Membre Dernière intervention 25 avril 2013 3
30 oct. 2009 à 11:11
C'est bon solution trouvée entre temps ;) Merci de ton aide quand même =)
0
tiralia Messages postés 1568 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 9 mars 2016 255
21 nov. 2009 à 13:49
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 mardi 17 mars 2009 Statut Membre Dernière intervention 25 avril 2013 3
16 déc. 2009 à 10:48
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