Parse error Moteur de recherche
Résolu/Fermé
A voir également:
- Parse error Moteur de recherche
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Installer qwant moteur de recherche - Télécharger - Navigateurs
- Moteur de recherche sans censure - Accueil - Services en ligne
- Network error iptv - Forum Réseaux sociaux
- Http error 413 zimbra - Forum autres boîtes mail
15 réponses
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 13:51
22 mars 2008 à 13:51
dans le script que tu donnes, il n'y a pas de ligne 93, ni de variable $end.
merci de donner le bon code...
et d'UTILISER la BALISE CODE disponible pour formater les messages.
merci de donner le bon code...
et d'UTILISER la BALISE CODE disponible pour formater les messages.
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 14:04
22 mars 2008 à 14:04
oui en effet je n'avais copié que la partie PHP, pour la balise code j'étais pas au courant, merci d'avance
<!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> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Indexation du site</title> </head> <body> <?php echo " <p>\n <table BGCOLOR=\"#EFF2FB\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" WIDTH="%">\n <tr><td>\n <a name=\"index\"><h2>Indexation du site en cours</h2></a>\n </td></tr>\n </table>\n <p>\n"; $host = "localhost"; $bdd = "moteur06"; /* Connexion avec MySQL */ mysql_connect($host,$user,$password) or die ("Impossible de se connecter au serveur de base de donnees"); mysql_select_db(moteur06) or die ("Impossible d'accéder à la base moteur06"); $query = "DELETE FROM search"; mysql_query($query) or die ("Erreur de modification de la table"); function ScanDir($Directory){ $MyDirectory = opendir($Directory); while($Entry = readdir($MyDirectory)) { echo "<br>entry= $Entry<br>"; echo "repertoire= $Directory<br>"; echo "chemin= $Directory/$Entry<br>"; if(is_dir(Entry)&& $Entry != "." && $Entry != "..") { echo "<b><font color=\"red\">$Entry</font> </b> est un repertoire<br>"; ScanDir("$Entry/$Directory"); } else { if (eregi(".htm",$Entry)) { $MetaTags = get_meta_tags($Directory."/".$Entry); if ($MetaTags["robots"] == "all") { $MetaKey = $MetaTags["keywords"]; $MetaKey = strtoupper($MetaKey); echo "Meta($Directory/$Entry): $MetaKey \n"; $MetaTitre = $MetaTags["title"]; echo "Meta($Directory/$Entry): $MetaTitre \n"; $query = "INSERT INTO search (lien,keyword,titre) VALUES(\"$Directory/$Entry\",\"$MetaKey\",\"$MetaTitre\")"; $mysql_result = mysql_query($query) or die ("Erreur de modification de la table par la requete \"$query\""); } } } } closedir($MyDirectory); echo "OK close dir"; open_basedir("."); $ScanDir=("."); mysql_close(); ?> </body> </html>
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 14:09
22 mars 2008 à 14:09
Merci d'utiliser la BALISE CODE <> !!
4eme en partant de la gauche
4eme en partant de la gauche
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 14:16
22 mars 2008 à 14:16
Là ce devrait être bon !
Merci
<!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> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Indexation du site</title> </head> <body> <?php echo " <p>\n <table BGCOLOR=\"#EFF2FB\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" WIDTH="%">\n <tr><td>\n <a name=\"index\"><h2>Indexation du site en cours</h2></a>\n </td></tr>\n </table>\n <p>\n"; $host = "localhost"; $bdd = "moteur06"; /* Connexion avec MySQL */ mysql_connect($host,$user,$password) or die ("Impossible de se connecter au serveur de base de donnees"); mysql_select_db(moteur06) or die ("Impossible d'accéder à la base moteur06"); $query = "DELETE FROM search"; mysql_query($query) or die ("Erreur de modification de la table"); function ScanDir($Directory){ $MyDirectory = opendir($Directory); while($Entry = readdir($MyDirectory)) { echo "<br>entry= $Entry<br>"; echo "repertoire= $Directory<br>"; echo "chemin= $Directory/$Entry<br>"; if(is_dir(Entry)&& $Entry != "." && $Entry != "..") { echo "<b><font color=\"red\">$Entry</font> </b> est un repertoire<br>"; ScanDir("$Entry/$Directory"); } else { if (eregi(".htm",$Entry)) { $MetaTags = get_meta_tags($Directory."/".$Entry); if ($MetaTags["robots"] == "all") { $MetaKey = $MetaTags["keywords"]; $MetaKey = strtoupper($MetaKey); echo "Meta($Directory/$Entry): $MetaKey \n"; $MetaTitre = $MetaTags["title"]; echo "Meta($Directory/$Entry): $MetaTitre \n"; $query = "INSERT INTO search (lien,keyword,titre) VALUES(\"$Directory/$Entry\",\"$MetaKey\",\"$MetaTitre\")"; $mysql_result = mysql_query($query) or die ("Erreur de modification de la table par la requete \"$query\""); } } } } closedir($MyDirectory); echo "OK close dir"; open_basedir("."); $ScanDir=("."); mysql_close(); ?> </body> </html>
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 14:19
22 mars 2008 à 14:19
dans le script que tu donnes :
1) il n'y a pas de ligne 93
2) ni de variable $end.
merci de donner le bon code...
1) il n'y a pas de ligne 93
2) ni de variable $end.
merci de donner le bon code...
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 14:22
22 mars 2008 à 14:22
La ligne 93 c'était juste un espace désolé, en fait en virant cet espace, j'ai le même message mais en ligne 92 qui est la dernière du code.
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 14:27
22 mars 2008 à 14:27
Tu devrais faire des efforts sur l'indentation de tes codes. Tu y verrais plus clair...
Il manque un accolade fermante.
PS : la prochaine fois, copies colles tes erreurs dans Google. Dans 99,99% des cas,tu as la solution.
et il doit y avoir une erreur ici :
open_basedir(".");
$ScanDir=(".");
Car $ScanDir n'existe pas. mais la fonction scandir existe.
car open_basedir est un param de config de php.ini , pas une fonction php
Il manque un accolade fermante.
PS : la prochaine fois, copies colles tes erreurs dans Google. Dans 99,99% des cas,tu as la solution.
<!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> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Indexation du site</title> </head> <body> <?php echo " <p>\n <table BGCOLOR=\"#EFF2FB\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" WIDTH="%">\n <tr><td>\n <a name=\"index\"><h2>Indexation du site en cours</h2></a>\n </td></tr>\n </table>\n <p>\n"; $host = "localhost"; $bdd = "moteur06"; /* Connexion avec MySQL */ mysql_connect($host,$user,$password) or die ("Impossible de se connecter au serveur de base de donnees"); mysql_select_db(moteur06) or die ("Impossible d'accéder à la base moteur06"); $query = "DELETE FROM search"; mysql_query($query) or die ("Erreur de modification de la table"); function ScanDir($Directory) { $MyDirectory = opendir($Directory); while($Entry = readdir($MyDirectory)) { echo "<br>entry= $Entry<br>"; echo "repertoire= $Directory<br>"; echo "chemin= $Directory/$Entry<br>"; if(is_dir(Entry)&& $Entry != "." && $Entry != "..") { echo "<b><font color=\"red\">$Entry</font> </b> est un repertoire<br>"; ScanDir("$Entry/$Directory"); } else { if (eregi(".htm",$Entry)) { $MetaTags = get_meta_tags($Directory."/".$Entry); if ($MetaTags["robots"] == "all") { $MetaKey = $MetaTags["keywords"]; $MetaKey = strtoupper($MetaKey); echo "Meta($Directory/$Entry): $MetaKey\n"; $MetaTitre = $MetaTags["title"]; echo "Meta($Directory/$Entry): $MetaTitre\n"; $query = "INSERT INTO search (lien,keyword,titre) VALUES(\"$Directory/$Entry\",\"$MetaKey\",\"$MetaTitre\")"; $mysql_result = mysql_query($query) or die ("Erreur de modification de la table par la requete \"$query\""); } } } } closedir($MyDirectory); echo "OK close dir"; } open_basedir("."); $ScanDir=("."); mysql_close(); ?> </body> </html>
et il doit y avoir une erreur ici :
open_basedir(".");
$ScanDir=(".");
Car $ScanDir n'existe pas. mais la fonction scandir existe.
car open_basedir est un param de config de php.ini , pas une fonction php
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 14:57
22 mars 2008 à 14:57
Merci de ton aide, encore qu'étant totalement débutant j'aurais bien aimé savoir où il manquait une accolade.
Quand à l'indentation des codes le modèle je l'ai copié est ici : https://www.commentcamarche.net/contents/801-php-creer-un-moteur-de-recherche
je pensais récupérer quelque chose de clean.
Quand à l'indentation des codes le modèle je l'ai copié est ici : https://www.commentcamarche.net/contents/801-php-creer-un-moteur-de-recherche
je pensais récupérer quelque chose de clean.
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 15:03
22 mars 2008 à 15:03
Ben quand tu fais des copier coller et des rajouts, fais les correctement, car je vois pas d'erreurs sur la source...
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 15:10
22 mars 2008 à 15:10
Un simple copier collé je ne vois pas trop comment j'aurais pu me tromper mais enfin la fatigue aidant j'ai du perdre le fil à un moment.
J'ai corrigé et maintenant
fatal error : cannot redeclare scandir()
J'ai corrigé et maintenant
fatal error : cannot redeclare scandir()
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 15:17
22 mars 2008 à 15:17
Déjà dit plus haut.
$ScanDir=("."); → ScanDir(".");
fais qqch quoi. soit tu copies colles tel que, soit tu apprends les bases du php et tu fais des modifications...
$ScanDir=("."); → ScanDir(".");
fais qqch quoi. soit tu copies colles tel que, soit tu apprends les bases du php et tu fais des modifications...
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 15:23
22 mars 2008 à 15:23
déjà fait précédemment
fatal error : cannot redeclare scandir()
<!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> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Indexation du site</title> </head> <body> <?php echo " <p>\n <table BGCOLOR=\"#EFF2FB\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" WIDTH="%">\n <tr><td>\n <a name=\"index\"><h2>Indexation du site en cours</h2></a>\n </td></tr>\n </table>\n <p>\n"; $host = "localhost"; $bdd = "moteur06"; /* Connexion avec MySQL */ mysql_connect($host,$user,$password) or die ("Impossible de se connecter au serveur de base de donnees"); mysql_select_db(moteur06) or die ("Impossible d'accéder à la base moteur06"); $query = "DELETE FROM search"; mysql_query($query) or die ("Erreur de modification de la table"); function ScanDir($Directory){ $MyDirectory = opendir($Directory); while($Entry = readdir($MyDirectory)) { echo "<br>entry= $Entry<br>"; echo "repertoire= $Directory<br>"; echo "chemin= $Directory/$Entry<br>"; if(is_dir(Entry)&& $Entry != "." && $Entry != "..") { echo "<b><font color=\"red\">$Entry</font> </b> est un repertoire<br>"; ScanDir("$Entry/$Directory"); } else { if (eregi(".htm",$Entry)) { $MetaTags = get_meta_tags($Directory."/".$Entry); if ($MetaTags["robots"] == "all") { $MetaKey = $MetaTags["keywords"]; $MetaKey = strtoupper($MetaKey); echo "Meta($Directory/$Entry): $MetaKey \n"; $MetaTitre = $MetaTags["title"]; echo "Meta($Directory/$Entry): $MetaTitre \n"; $query = "INSERT INTO search (lien,keyword,titre) VALUES(\"$Directory/$Entry\",\"$MetaKey\",\"$MetaTitre\")"; $mysql_result = mysql_query($query) or die ("Erreur de modification de la table par la requete \"$query\""); } } } } closedir($MyDirectory); } $open_basedir="."; ScanDir("."); mysql_close(); ?> </body> </html>
fatal error : cannot redeclare scandir()
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 15:27
22 mars 2008 à 15:27
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
22 mars 2008 à 15:43
22 mars 2008 à 15:43
Bon c'est bien tout ça, si j'avais été capable de trouver la réponse sur Google je n'aurais pas poster sur le Forum.
Je pensais y trouver de l'aide, un forum c'est pour les débutants (du moins je croyais) mais apparemment le Grizzly est un ours ... et je vais aller voir ailleurs.
Merci
Je pensais y trouver de l'aide, un forum c'est pour les débutants (du moins je croyais) mais apparemment le Grizzly est un ours ... et je vais aller voir ailleurs.
Merci
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 334
22 mars 2008 à 17:18
22 mars 2008 à 17:18
taing c'est dingue. sur la page de résultat google (lien que je t'ai donné), en première page, tu as ca :
https://www.developpez.net/forums/d155527/php/langage/fonction-scandir-php5/
c'est parceque scandir est une fonction déjà existante dans PHP 5 ;
https://www.php.net/manual/fr/function.scandir.php
nomme là différament
https://www.developpez.net/forums/d155527/php/langage/fonction-scandir-php5/
c'est parceque scandir est une fonction déjà existante dans PHP 5 ;
https://www.php.net/manual/fr/function.scandir.php
nomme là différament
ulukyn
Messages postés
2
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
23 mars 2008
22 mars 2008 à 16:00
22 mars 2008 à 16:00
Pas besoin de chercher de ligne 93, il y a une erreur au premier echo.
Il n'ets pas possible de faire un echo sur plusieurs lignes de cette manière, même en échappant les guillemets.
https://www.php.net/echo
<?php
echo <<<END
<p>
<table BGCOLOR="#EFF2FB" BORDER="0"
CELLSPACING="0"
CELLPADDING="1"
WIDTH="%">
<tr><td>
<a name="index"><h2>Indexation du site en cours</h2></a>
</td></tr>
</table>
<p>
END;
Pour corriger le code :)
Il n'ets pas possible de faire un echo sur plusieurs lignes de cette manière, même en échappant les guillemets.
https://www.php.net/echo
<?php
echo <<<END
<p>
<table BGCOLOR="#EFF2FB" BORDER="0"
CELLSPACING="0"
CELLPADDING="1"
WIDTH="%">
<tr><td>
<a name="index"><h2>Indexation du site en cours</h2></a>
</td></tr>
</table>
<p>
END;
Pour corriger le code :)
ulukyn
Messages postés
2
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
23 mars 2008
23 mars 2008 à 11:06
23 mars 2008 à 11:06
Oulaa, J'ai dit une grosse bêtise là :p
Il est possible de faire un echo sur plusieurs lignes.
Ce que je ne fait jamais (au point de croire que c'était impossible :p)
Par contre une des erreurs venait bien de là.
Car la ligne : WIDTH="%">\n possédait des guillemets non échappés.
Avec la syntaxe "here doc", on risque moins les erreurs de ce type.
voici le code corriger :
Il est possible de faire un echo sur plusieurs lignes.
Ce que je ne fait jamais (au point de croire que c'était impossible :p)
Par contre une des erreurs venait bien de là.
Car la ligne : WIDTH="%">\n possédait des guillemets non échappés.
Avec la syntaxe "here doc", on risque moins les erreurs de ce type.
voici le code corriger :
<?php echo <<<END <p>\n <table BGCOLOR="#EFF2FB" BORDER="0" CELLSPACING="0" CELLPADDING="1" WIDTH="%"> <tr><td> <a name="index"><h2>Indexation du site en cours</h2></a> </td></tr> </table> <p> END; $host = "localhost"; $user = "root"; // A adapter $password = ""; // A adapter $bdd = "moteur06"; /* Connexion avec MySQL */ mysql_connect($host,$user,$password) or die ("Impossible de se connecter au serveur de base de donnees"); mysql_select_db($bdd) or die ("Impossible d'accéder à la base moteur06"); $query = "DELETE FROM search"; mysql_query($query) or die ("Erreur de modification de la table"); function ScanThisDir($Directory) { $MyDirectory = opendir($Directory); while ($Entry = readdir($MyDirectory)) { echo "<br>entry= $Entry<br>"; echo "repertoire= $Directory<br>"; echo "chemin= $Directory/$Entry<br>"; if (is_dir($Entry) && $Entry != "." && $Entry != "..") { echo "<b><font color=\"red\">$Entry</font></b> est un repertoire<br>"; ScanThisDir("$Directory/$Entry"); } else { if (eregi(".htm",$Entry)) { $MetaTags = get_meta_tags($Directory."/".$Entry); if (array_key_exists('robots', $MetaTags) && ($MetaTags["robots"] == "all")) { $MetaKey = $MetaTags["keywords"]; $MetaKey = strtoupper($MetaKey); echo "Meta($Directory/$Entry): $MetaKey<br>\n"; $MetaTitre = $MetaTags["title"]; echo "Meta($Directory/$Entry): $MetaTitre<br>\n"; $query = "INSERT INTO search (lien,keyword,titre) VALUES(\"$Directory/$Entry\",\"$MetaKey\",\"$MetaTitre\")"; $mysql_result = mysql_query($query) or die ("Erreur de modification de la table par la requete \"$query\""); } } } } closedir($MyDirectory); } echo "OK close dir"; $open_basedir = "."; ScanThisDir("."); mysql_close(); ?>
Alex-101317
Messages postés
8
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
24 mars 2008
24 mars 2008 à 13:20
24 mars 2008 à 13:20
Bonjour
Merci de ton aide ulukyn, j'ai plus avancé en 2 posts qu'après quelques échanges stériles, je crois que pour la suite je vais me débrouiller.
Merci encore.
Merci de ton aide ulukyn, j'ai plus avancé en 2 posts qu'après quelques échanges stériles, je crois que pour la suite je vais me débrouiller.
Merci encore.
merci d'avoir corriger l'erreur sur la page principale proposer cela fonctionne très bien .
https://www.commentcamarche.net/contents/801-php-creer-un-moteur-de-recherche
Dommage qu'il n'y est aucune correction du post ni un lien vers cette correction
je souhaite avoir la suite de cette page malheuresement non corriger
la derniere partit du code ne charge pas les mots demander
la correction très bien faite recherche très bien les meta inserer
manquant: le code pour l'affichage de ces données inserer des les tables
merci de répondre afin de completer ce post entierement
webmaster@la-boite-noire.com
https://www.commentcamarche.net/contents/801-php-creer-un-moteur-de-recherche
Dommage qu'il n'y est aucune correction du post ni un lien vers cette correction
je souhaite avoir la suite de cette page malheuresement non corriger
la derniere partit du code ne charge pas les mots demander
la correction très bien faite recherche très bien les meta inserer
manquant: le code pour l'affichage de ces données inserer des les tables
merci de répondre afin de completer ce post entierement
webmaster@la-boite-noire.com