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
- Recherche de pairs utorrent ✓ - Forum Téléchargement
14 réponses
bah d'aprés le code d'erreur, c'est qu'il n'arrive pas à acceder à ta base ... vérifie l'ortographe (en prenant en compte les majuscules^^)
aprés je ne sais pas :
$phrase limit $debut,$limit
ce limit est'il la variable? si oui, mets un $ devant, mais je vois pas trop ce qu'il fait la, vu qu'il y a un $limit aprés ...
en plus tu avais ouvert une requete avant :
$requete=mysql_select_db("$sql_bdd","select count(*) from recherche where mots like $phrase order by id",$db_link);
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
et tu ne la ferme pas avant d'en refaire une, essaye de la fermer avant d'en rouvrir une ^^
aprés je ne sais pas :
$phrase limit $debut,$limit
ce limit est'il la variable? si oui, mets un $ devant, mais je vois pas trop ce qu'il fait la, vu qu'il y a un $limit aprés ...
en plus tu avais ouvert une requete avant :
$requete=mysql_select_db("$sql_bdd","select count(*) from recherche where mots like $phrase order by id",$db_link);
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
et tu ne la ferme pas avant d'en refaire une, essaye de la fermer avant d'en rouvrir une ^^
pour ton test, t'as utilisé un serveur mettant en place le php (comme easy php pour le test) ? sinon il ne comprend pas et le traite comme une page html -> il affiche le contenu :)
Bonjour,
Merci pour ta réponse. J'utilise Wamp, c'est pour ça que je ne comprend pas ce qui se passe.
Merci
Merci pour ta réponse. J'utilise Wamp, c'est pour ça que je ne comprend pas ce qui se passe.
Merci
yop ! je ne le connais pas mais apparement faut activer le service. verifis que celui ci l'est bien (j'avais eu le meme problème ... )
une autre question, pour tes tests, tu vas bien sur http://127.0.0.1 ? (je sais c'est des questions cons mes des fois on fait des erreurs simples =) ... et comme ca j'en saurai plus ^^)
une autre question, pour tes tests, tu vas bien sur http://127.0.0.1 ? (je sais c'est des questions cons mes des fois on fait des erreurs simples =) ... et comme ca j'en saurai plus ^^)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oui, je le teste bien comme il faut. Mes autres scripts marchent bien mais pour celui-là, j'ai ce problème.
J'ai testé d'autres moteurs de recherche avec lesquels tout s'est bien passé, requête sur la base de données sans problème.
merci
J'ai testé d'autres moteurs de recherche avec lesquels tout s'est bien passé, requête sur la base de données sans problème.
merci
et encore un truc con : à la première ligne c'est normal que tu ai mis
<?
et pas
<?php
... fin je sais pas, je dis ca comme ca =), je comprend qu'il y ai pas le pw root mais ca non ^^
<?
et pas
<?php
... fin je sais pas, je dis ca comme ca =), je comprend qu'il y ai pas le pw root mais ca non ^^
J'ai modifié en rajoutant le <?php, j'obtiens un message d'erreur mais la syntaxe de mon code php ne s'affiche plus :
Notice: Undefined variable: mot in C:\wamp\www\MoteurRecherche\recherche.php3 on line 35
Deprecated: Function split() is deprecated in C:\wamp\www\MoteurRecherche\recherche.php3 on line 36
Notice: Undefined variable: page in C:\wamp\www\MoteurRecherche\recherche.php3 on line 51
Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\wamp\www\MoteurRecherche\recherche.php3 on line 55
Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\wamp\www\MoteurRecherche\recherche.php3 on line 58
Veuillez saisir un ou plusieurs mot-clés avant de cliquer sur 'OK' !
Je te remercie pour ton aide.
Notice: Undefined variable: mot in C:\wamp\www\MoteurRecherche\recherche.php3 on line 35
Deprecated: Function split() is deprecated in C:\wamp\www\MoteurRecherche\recherche.php3 on line 36
Notice: Undefined variable: page in C:\wamp\www\MoteurRecherche\recherche.php3 on line 51
Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\wamp\www\MoteurRecherche\recherche.php3 on line 55
Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\wamp\www\MoteurRecherche\recherche.php3 on line 58
Veuillez saisir un ou plusieurs mot-clés avant de cliquer sur 'OK' !
Je te remercie pour ton aide.
$mot=strtolower($mot);
tu ne déclare pas ta variable, d'ou vient ce "mot"??
je pense que c'est de la que viennent les problèmes, tu dois déclarer ta variable plus tot, car la tu utilise la variable pour cette variable sans déclaration au préalable.
en fait cette fonction met en minuscule ce que contient mot c'est ca? donc si elle ne contient rien (car pas déclarée), ca rique de poser soucis =p
tu ne déclare pas ta variable, d'ou vient ce "mot"??
je pense que c'est de la que viennent les problèmes, tu dois déclarer ta variable plus tot, car la tu utilise la variable pour cette variable sans déclaration au préalable.
en fait cette fonction met en minuscule ce que contient mot c'est ca? donc si elle ne contient rien (car pas déclarée), ca rique de poser soucis =p
Je vais changer tout ça et je regarde ce que ça donne. Je ne suis pas encore très habile avec le code, ça ne fait pas très longtemps que je m'essaye au php...
C'est passionnant mais parfois un peu compliqué...
Merci beaucoup pour ton aide, je regarde et te donne le résultat.
Bonne journée
C'est passionnant mais parfois un peu compliqué...
Merci beaucoup pour ton aide, je regarde et te donne le résultat.
Bonne journée
oki ca marche !
en gros j'ai pas bien regardé, mais je suppose que c'est ce "mot" que tu recherche dans ta base sql, essaye deja en déclarant : $mot = "recherche"; (en mettant un mot a rechercher à la place de recherche) , et par la suis récupérer gràce à un $_POST['mot']; , avec sur ta page html un post mettant en fait :
http://127.0.0.1/pagephp.php?mot=recherche
en gros j'ai pas bien regardé, mais je suppose que c'est ce "mot" que tu recherche dans ta base sql, essaye deja en déclarant : $mot = "recherche"; (en mettant un mot a rechercher à la place de recherche) , et par la suis récupérer gràce à un $_POST['mot']; , avec sur ta page html un post mettant en fait :
http://127.0.0.1/pagephp.php?mot=recherche
J'ai déclaré ma variable mot, j'ai les erreurs suivantes sur mes requetes, j'ai modifié mysql_db_query qui me générait une erreur deprecated... mais maintenant j'ai ces erreurs :
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 79
Warning: mysql_result() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 80
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 82
Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 83
Désolé, aucune page de ce site ne contient ...
Ma page modifiée :
<?php
error_reporting(E_ALL ^ E_NOTICE);
$mot = $_POST['mot'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Résultat de la recherche</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body text="#FFFFFF" bgcolor="#000000" link="#9999FF" vlink="#6699FF" alink="#FFFF00">
<font face="Verdana" size=2>
<form action="recherche.php" method="post">
Saisissez un ou plusieurs mots :
<input type="text" name="mot" size="20">
<input type="submit" value="Rechercher">
</form>
</body>
</html>
<?php
/******************************************************************
* VARIABLES A MODIFIER
******************************************************************/
// NOMBRE DE RESULTATS PAR PAGE
$limit=2;
// NOM DE CE SCRIPT
$script_name="recherche.php";
// SERVEUR SQL
$sql_serveur="localhost";
// LOGIN SQL
$sql_user="root";
// MOT DE PASSE SQL
$sql_passwd="";
// BASE DE DONNEE
$sql_bdd="infos";
// RECHERCHE AVEC TOUS LES MOTS : METTEZ "and"
// RECHERCHER LES PAGES QUI CONTIENNENT AU MOINS UN MOT : METTEZ "or"
$et_ou="or";
/******************************************************************
* PROGRAMME PRINCIPAL
******************************************************************/
$db_link = mysql_connect("$sql_serveur","$sql_user","$sql_passwd");
$mot=strtolower($mot);
$nombre_mots=count($mots);
$z=1;
$texte="Pages contenant <b>"$mots[0]"</b>";
$phrase="'%$mots[0]%'";
while($z<$nombre_mots)
{
$phrase.=" ".$et_ou." mots like '%$mots[$z]%'";
$texte.=" ";
if($et_ou=="and"){$texte.="et";}else{$texte.="ou";}
$texte.=" <b>"$mots[$z]"</b>";
$z++;
}
if($page==""){$page=0;}
$debut=$page*$limit;
// NOMBRE TOTAL D'ENREGISTREMENTS REPONDANT A LA REQUETE
$requete=mysql_select_db("$sql_bdd","select count(*) from recherche where mots like $phrase order by id",$db_link);
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
$num=mysql_num_rows($requete);
// DEFINITION DU MESSAGE A AFFICHER
if ($num==0) {echo "Désolé, aucune page de ce site ne contient <b>$mot</b>...";}
else if ($mot=="") {echo "Veuillez saisir un ou plusieurs mot-clés avant de cliquer sur 'OK' !";}
else if (strlen($mot)<2) {echo "Veuillez saisir au moins 2 caractères.";}
// AFFICHAGE DES RESULTATS
else {
echo "<b>$nb_total</b> réponse";
if ($nb_total>1) {echo "s";}
echo "<br>$texte";
$i=0;
while($i<$num)
{
$url=mysql_result($requete,$i,"url");
$description=mysql_result($requete,$i,"description");
$titre=mysql_result($requete,$i,"titre");
echo "<br><br><a href=\"$url\"><b>$titre</b></a><br>$description<br><font size=1>$url</font>\n";
$i++;
}
echo "<br><br>";
// AFFICHAGE DU LIEN PRECEDENT SI BESOIN EST
// (LA PREMIERE PAGES EST 0)
if ($page>0)
{
$precedent=$page-1;
print "<a href=\"$script_name?page=$precedent&mot=$mot\">PRECEDENT</a> \n";
}
// AFFICHAGE DES NUMEROS DE PAGE
$i=0;$j=1;
if($nb_total>$limit)
{
while($i<($nb_total/$limit))
{
if($i!=$page){echo "(<a href=\"$script_name?page=$i&mot=$mot\">$j</a>) ";}
else {echo "<b>($j)</b> ";}
$i++;$j++;
}
}
// AFFICHAGE DU LIEN SUIVANT SI BESOIN EST
if($debut+$limit<$nb_total)
{
$suivant=$page+1;
echo "<a href=\"$script_name?page=$suivant&mot=$mot\">SUIVANT</a>";
}
}
// DECONNEXION DE LA BASE DE DONNEE
mysql_close($db_link);
?>
</font>
</body>
</html>
Merci
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 79
Warning: mysql_result() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 80
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 82
Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 83
Désolé, aucune page de ce site ne contient ...
Ma page modifiée :
<?php
error_reporting(E_ALL ^ E_NOTICE);
$mot = $_POST['mot'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Résultat de la recherche</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body text="#FFFFFF" bgcolor="#000000" link="#9999FF" vlink="#6699FF" alink="#FFFF00">
<font face="Verdana" size=2>
<form action="recherche.php" method="post">
Saisissez un ou plusieurs mots :
<input type="text" name="mot" size="20">
<input type="submit" value="Rechercher">
</form>
</body>
</html>
<?php
/******************************************************************
* VARIABLES A MODIFIER
******************************************************************/
// NOMBRE DE RESULTATS PAR PAGE
$limit=2;
// NOM DE CE SCRIPT
$script_name="recherche.php";
// SERVEUR SQL
$sql_serveur="localhost";
// LOGIN SQL
$sql_user="root";
// MOT DE PASSE SQL
$sql_passwd="";
// BASE DE DONNEE
$sql_bdd="infos";
// RECHERCHE AVEC TOUS LES MOTS : METTEZ "and"
// RECHERCHER LES PAGES QUI CONTIENNENT AU MOINS UN MOT : METTEZ "or"
$et_ou="or";
/******************************************************************
* PROGRAMME PRINCIPAL
******************************************************************/
$db_link = mysql_connect("$sql_serveur","$sql_user","$sql_passwd");
$mot=strtolower($mot);
$nombre_mots=count($mots);
$z=1;
$texte="Pages contenant <b>"$mots[0]"</b>";
$phrase="'%$mots[0]%'";
while($z<$nombre_mots)
{
$phrase.=" ".$et_ou." mots like '%$mots[$z]%'";
$texte.=" ";
if($et_ou=="and"){$texte.="et";}else{$texte.="ou";}
$texte.=" <b>"$mots[$z]"</b>";
$z++;
}
if($page==""){$page=0;}
$debut=$page*$limit;
// NOMBRE TOTAL D'ENREGISTREMENTS REPONDANT A LA REQUETE
$requete=mysql_select_db("$sql_bdd","select count(*) from recherche where mots like $phrase order by id",$db_link);
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
$num=mysql_num_rows($requete);
// DEFINITION DU MESSAGE A AFFICHER
if ($num==0) {echo "Désolé, aucune page de ce site ne contient <b>$mot</b>...";}
else if ($mot=="") {echo "Veuillez saisir un ou plusieurs mot-clés avant de cliquer sur 'OK' !";}
else if (strlen($mot)<2) {echo "Veuillez saisir au moins 2 caractères.";}
// AFFICHAGE DES RESULTATS
else {
echo "<b>$nb_total</b> réponse";
if ($nb_total>1) {echo "s";}
echo "<br>$texte";
$i=0;
while($i<$num)
{
$url=mysql_result($requete,$i,"url");
$description=mysql_result($requete,$i,"description");
$titre=mysql_result($requete,$i,"titre");
echo "<br><br><a href=\"$url\"><b>$titre</b></a><br>$description<br><font size=1>$url</font>\n";
$i++;
}
echo "<br><br>";
// AFFICHAGE DU LIEN PRECEDENT SI BESOIN EST
// (LA PREMIERE PAGES EST 0)
if ($page>0)
{
$precedent=$page-1;
print "<a href=\"$script_name?page=$precedent&mot=$mot\">PRECEDENT</a> \n";
}
// AFFICHAGE DES NUMEROS DE PAGE
$i=0;$j=1;
if($nb_total>$limit)
{
while($i<($nb_total/$limit))
{
if($i!=$page){echo "(<a href=\"$script_name?page=$i&mot=$mot\">$j</a>) ";}
else {echo "<b>($j)</b> ";}
$i++;$j++;
}
}
// AFFICHAGE DU LIEN SUIVANT SI BESOIN EST
if($debut+$limit<$nb_total)
{
$suivant=$page+1;
echo "<a href=\"$script_name?page=$suivant&mot=$mot\">SUIVANT</a>";
}
}
// DECONNEXION DE LA BASE DE DONNEE
mysql_close($db_link);
?>
</font>
</body>
</html>
Merci
essaye à la place de :
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit",$db_link);
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
Je viens de tester mais j'ai toujours des erreurs...
// NOMBRE TOTAL D'ENREGISTREMENTS REPONDANT A LA REQUETE
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
$num=mysql_num_rows($requete);
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 78
Warning: mysql_result() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 79
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 81
Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 82
Merci beaucoup pour ton aide...
// NOMBRE TOTAL D'ENREGISTREMENTS REPONDANT A LA REQUETE
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
$nb_total=mysql_result($requete,0,"count(*)");
$requete=mysql_select_db("$sql_bdd","select * from recherche where mots like $phrase limit $debut,$limit","$db_link");
$num=mysql_num_rows($requete);
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 78
Warning: mysql_result() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 79
Warning: mysql_select_db() expects at most 2 parameters, 3 given in C:\wamp\www\MoteurRecherche\recherche.php on line 81
Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:\wamp\www\MoteurRecherche\recherche.php on line 82
Merci beaucoup pour ton aide...