Moteur de recherche
Skater54
Messages postés
94
Statut
Membre
-
Skater54 Messages postés 94 Statut Membre -
Skater54 Messages postés 94 Statut Membre -
Bonjour,
J'ai créer un moteur de recherche mais j'aimerai que lorsque qu'une personne rentre un mot qui n'est pas dans la base de donnée , que sa affiche un message du genre " Votre recherche n'a renvoyé aucun résultat.". J'aimerai aussi que lorsque une personne appuie sur le bouton rechercher alors qu'elle n'a rien rentré il ne se passe rien, je précise je suis débutant dans la programmation.
voila mon script :
<?php include("includes/Menu_haut.php"); ?>
<div id="corp">
<h1>.:: Recherche ::.</h1>
<div id="content">
<?php
$nombreDeMessagesParPage = 30;
$retour = mysql_query("SELECT COUNT(*) AS nb_imagemini FROM news ");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_imagemini'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
if (isset($_GET['page']))
{
$page = $_GET['page'];
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query("SELECT * FROM news WHERE titre LIKE '%".str_replace(' ', '%', $_POST['recherche'])."%' ORDER BY titre LIMIT ".$premierMessageAafficher.', '.$nombreDeMessagesParPage);
?>
<table>
<?php
for($i = 0; $donnees = mysql_fetch_array($reponse); $i++)
{
if($i%5 == 0) echo '<tr>';
$imagemini = stripslashes($donnees['imagemini']);
$titre = stripslashes($donnees['titre']);
echo '<td valign="baseline" align="center"><a href="upload.php?id='.$donnees['id'].'"><img width="120" height="160" src="'.$imagemini.'" />' .$titre. '</a></td>';
if($i%5 == 4) echo '</tr>';
}
?>
</table>
<?php include("includes/bas_de_page.php"); ?>
Merci !
J'ai créer un moteur de recherche mais j'aimerai que lorsque qu'une personne rentre un mot qui n'est pas dans la base de donnée , que sa affiche un message du genre " Votre recherche n'a renvoyé aucun résultat.". J'aimerai aussi que lorsque une personne appuie sur le bouton rechercher alors qu'elle n'a rien rentré il ne se passe rien, je précise je suis débutant dans la programmation.
voila mon script :
<?php include("includes/Menu_haut.php"); ?>
<div id="corp">
<h1>.:: Recherche ::.</h1>
<div id="content">
<?php
$nombreDeMessagesParPage = 30;
$retour = mysql_query("SELECT COUNT(*) AS nb_imagemini FROM news ");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_imagemini'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
if (isset($_GET['page']))
{
$page = $_GET['page'];
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query("SELECT * FROM news WHERE titre LIKE '%".str_replace(' ', '%', $_POST['recherche'])."%' ORDER BY titre LIMIT ".$premierMessageAafficher.', '.$nombreDeMessagesParPage);
?>
<table>
<?php
for($i = 0; $donnees = mysql_fetch_array($reponse); $i++)
{
if($i%5 == 0) echo '<tr>';
$imagemini = stripslashes($donnees['imagemini']);
$titre = stripslashes($donnees['titre']);
echo '<td valign="baseline" align="center"><a href="upload.php?id='.$donnees['id'].'"><img width="120" height="160" src="'.$imagemini.'" />' .$titre. '</a></td>';
if($i%5 == 4) echo '</tr>';
}
?>
</table>
<?php include("includes/bas_de_page.php"); ?>
Merci !
A voir également:
- Moteur de recherche
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Google moteur de recherche page d'accueil - Guide
- Copernic moteur de recherche - Télécharger - Navigateurs
- Copernic Desktop Search - Télécharger - Utilitaires
- Pourquoi mon moteur de recherche change tout seul ✓ - Forum Virus
2 réponses
Bonjour,
Pour vérifier si la requête envoie des résultats, il faut vérifier que mysql_num_rows($reponse) n'est pas nul.
Cela donne donc :
Pour le fait qu'appuyer sur le bouton ne fasse rien, il faut utiliser du javascript, mais ça va un peu dépendre du code de ton formulaire.
Si tu utilises un formulaire classique <form> avec un bouton de type "submit", alors il faut rajouter un événement onsubmit à ton form :
<form onsubmit='javascript:return document.getElementById("TONCHAMPTEXTE").value != "";'>
Voilà !
Xavier
Pour vérifier si la requête envoie des résultats, il faut vérifier que mysql_num_rows($reponse) n'est pas nul.
Cela donne donc :
$reponse = mysql_query("SELECT * FROM news WHERE titre LIKE '%".str_replace(' ', '%', $_POST['recherche'])."%' ORDER BY titre LIMIT ".$premierMessageAafficher.', '.$nombreDeMessagesParPage);
if (mysql_num_rows($reponse) > 0)
{
?>
<table>
<?php
for($i = 0; $donnees = mysql_fetch_array($reponse); $i++)
{
if($i%5 == 0) echo '<tr>';
$imagemini = stripslashes($donnees['imagemini']);
$titre = stripslashes($donnees['titre']);
echo '<td valign="baseline" align="center"><a href="upload.php?id='.$donnees['id'].'"><img width="120" height="160" src="'.$imagemini.'" />' .$titre. '</a></td>';
if($i%5 == 4) echo '</tr>';
}
?>
</table>
<?php
}
else
echo "Aucun résultat !";
include("includes/bas_de_page.php"); ?>
Pour le fait qu'appuyer sur le bouton ne fasse rien, il faut utiliser du javascript, mais ça va un peu dépendre du code de ton formulaire.
Si tu utilises un formulaire classique <form> avec un bouton de type "submit", alors il faut rajouter un événement onsubmit à ton form :
<form onsubmit='javascript:return document.getElementById("TONCHAMPTEXTE").value != "";'>
Voilà !
Xavier