auryn111 Posté 20 Avril 2005 Posté 20 Avril 2005 Bonjour, je cherche à faire un petit qq chose, tjrs sur mon site www.am2.fr j'aimerai que dans ma bordure de gauche, par ex sous mon menu, il y ait un espace de texte, et un bouton ok. Dans l'espace texte, les visiteurs pourront chercher qq chose dans mon site, et en cliquant sur ok, ca ouvrirait une nouvelle page, avec tous les résultats. je sais que c possible, car pas mal de site ont cette fonction, mais je n'y arrive pas... je précise que je suis en hébergement payant, donc j'ai des fonctions comme extensions frontpage qui sont incluses. Merci à tous pour votre aide, Auryn
Sarc Posté 20 Avril 2005 Posté 20 Avril 2005 Salut Evite le langage SMS sur le forum, même si tu restes raisonnable, ça trouble d'en voir sur le Hub Je te conseille de lire le topic moteur de recherche ou quelqu'un posait déjà la question. Sinon, ce doit être facile de trouver des scripts PHP sur le net qui proposent un moteur de recherche interne
auryn111 Posté 20 Avril 2005 Auteur Posté 20 Avril 2005 Merci beaucoup, et désolé pour les raccourcis de langage, moi aussi j'ai horreur du sms, c'est affreux, je ne m'en rendait pas compte..... Merci en tout cas pour le lien, je vais aller jeter un coup d'oeil ! Auryn
auryn111 Posté 20 Avril 2005 Auteur Posté 20 Avril 2005 ah zut j'ai oublié de dire : le php c'est pas trop trop ma tasse de thé, j'ai un peu de mal avec.....
Dudu Posté 20 Avril 2005 Posté 20 Avril 2005 c'est pourtant ce qui apparaît comme la meilleure solution. Idéalement, le contenu de ton site est dans la base SQL, et PHP se charge d'interroger la base de données lors d'une recherche. De plus c'est bien plus standardisé comme système que les extensions FrontPage. Peu d'hébergeurs fournissant cette option, tu cours le risque de refaire tout son système le jour en cas d'éventuel changement d'hébergeur De plus, les hébergeurs vont certainement commencer à être de plus en plus méfiants vis-à-vis des extensions FrontPage au vu des différents risques de sécurité encourus (j'ai vu un petit chapitre là-dessus sur un site de sécurité informatique ces derniers temps). Concernant les solutions PHP, il n'est souvent pas nécessaire de connaître toutes les subtilités de ce langage pour mettre en place un tel système. Beaucoup de petites applications web en PHP vont tout à ta place. Au pire, tu seras amené à manipuler quelques lignes de code, mais rien de bien méchant. Sinon il reste une solution simple: Google Custom Bon courage
Anonymus Posté 20 Avril 2005 Posté 20 Avril 2005 Bonjour, en jetant un oeil sur la page d'accueil de webmaster-hub, tu trouveras exactement ce que tu cherches, à savoir une zone texte à remplir, qui aboutit sur des résultats de recherche. Le service là est proposé par Google, mais tu peux tout aussi bien proposer Msn, ou autre. En te servant d'un outil existant, d'un moteur existant, tu évites tout ce qui est 'création de formulaire'/recherche dans les tables, etc.. Anonymus.
auryn111 Posté 20 Avril 2005 Auteur Posté 20 Avril 2005 (modifié) alors oui je n'aime pas le php, ais en effet, c'est le mieux. J'ai trouvé une idée sur un site mais je n'arrive pas à tout faire. Du moins j'ai l'impression que cela ne fonctionne pas. voici la page où j'ai trouvé le script : http://www.commentcamarche.net/php/phpmoteur.php3 j'arrive à créer ma table search plus les 3 champs. ensuite, je crée 3 fichiers txt comme ils disent, mais je les nomme comme je veux. voilà j'ai mis tout ca sur mon site, et j'obtiens une page bizarre... http://www.am2.fr/basededonnees/Recherche/ quand j'ouvre mon fichier d'indexation (je l'ai nommé recherche.txt), j'obtiens : \n \n Indexation du site en cours \n \n \n \n"; $host = "localhost"; $bdd = "am2_fr_2"; /* 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 $bdd"); $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 " entry= $Entry "; echo "repertoire= $Directory "; echo "chemin= $Directory/$Entry "; if(is_dir($Entry)&& $Entry != "." && $Entry != "..") { echo "$Entry est un repertoire "; 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(); ?> avez vous une idée de là où je n'ai pas réussi ? Merci ! Modifié 25 Avril 2005 par Monique
Anonymus Posté 20 Avril 2005 Posté 20 Avril 2005 Un fichier php se termine par .php, et non .txt. Autrement dit, il te faut l'appeler recherche.php Pour ce qui est du code que tu mets dans ton message, tu peux le mettre entre 'quote', ou entre 'code', soit : [ CODE ] (sans les espaces), puis [ /CODE ] (sans les espaces également), cela aura pour effet de le placer ainsi : \n \n Indexation du site en cours \n \n \n \n"; $host = "localhost"; $bdd = "xxxx"; /* 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 $bdd"); $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 " entry= $Entry "; echo "repertoire= $Directory "; echo "chemin= $Directory/$Entry "; if(is_dir($Entry)&& $Entry != "." && $Entry != "..") { echo "$Entry est un repertoire "; 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(); ?> Anonymus.
Anonymus Posté 20 Avril 2005 Posté 20 Avril 2005 En mettant un petit peu en ordre, on obtient donc ceci : Indexation du site en cours <?$host = "localhost"; $bdd = "am2_fr_2"; /* 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 $bdd"); $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 " entry= $Entry "; echo "repertoire= $Directory "; echo "chemin= $Directory/$Entry "; if(is_dir($Entry)&& $Entry != "." && $Entry != "..") { echo "$Entry est un repertoire "; 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(); ?> Par rapport à ceci, il te manque la première partie (celle qui donne les login/mot de passe. Si tu as cette partie, c'est bon. Si tu la postes, modifies tes login/mot de passe avant de 'poster'. Tu devrais avoir un message d'erreur, si ca ne marche pas. Lequel est-ce ? Anonymus.
auryn111 Posté 20 Avril 2005 Auteur Posté 20 Avril 2005 ok, mais comment faire pour nommer mon fichier php ? et le reste avec le code, j'ai pas tout compris.... rien du tout meme.......
auryn111 Posté 20 Avril 2005 Auteur Posté 20 Avril 2005 pb résolu, grace à http://www.echodelta.net/scriptsphp/moteured/moteured.htm Merci en tout cas à ceux qui m'ont aidée.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant