Création
d'entreprise
Posez votre question Signaler

Mini Moteur de recherche PHP [Résolu]

Sephirus 89Messages postés 17 mars 2009Date d'inscription 19 août 2011Dernière intervention - Dernière réponse le 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>
Lire la suite 

Mini Moteur de recherche PHP »

4 réponses
Réponse
+0
moins plus
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>
Ajouter un commentaire
Réponse
+0
moins plus
C'est bon solution trouvée entre temps ;) Merci de ton aide quand même =)
Ajouter un commentaire
Réponse
+0
moins plus
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....
Ajouter un commentaire
Réponse
+0
moins plus
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);

}
?>
Ajouter un commentaire
Ce document intitulé « Mini Moteur de recherche PHP » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?