Indexer page de résultats à barre de recherche
Fermé
Maya_labeille
-
13 mai 2020 à 01:24
Anis_web Messages postés 61 Date d'inscription vendredi 10 avril 2020 Statut Membre Dernière intervention 17 mai 2020 - 13 mai 2020 à 13:02
Anis_web Messages postés 61 Date d'inscription vendredi 10 avril 2020 Statut Membre Dernière intervention 17 mai 2020 - 13 mai 2020 à 13:02
A voir également:
- Indexer page de résultats à barre de recherche
- Impossible de supprimer une page word - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Word numéro de page 1/2 - Guide
- Windows 11 barre des taches a gauche - Guide
- Google moteur de recherche page d'accueil - Guide
5 réponses
Anis_web
Messages postés
61
Date d'inscription
vendredi 10 avril 2020
Statut
Membre
Dernière intervention
17 mai 2020
5
Modifié le 13 mai 2020 à 08:20
Modifié le 13 mai 2020 à 08:20
Bonjour Maya,
pas de problème, je vais t'aider, mais pour celà je dois savoir quel langage de programmation utilise ton site.
Exemple : Wordpress.
Ou Prestashop ou si c'est un site sur mesure fait à la main.
Ma première remarque :
1- Le langage html et css ne fait que créer la mise en page de ton site.
Il te faut utiliser un troisième langage comme php par exemple car va traiter les informations que tu vas saisir dans le input type search pour te retourner un résultat.
2- Dans ce cas tu auras besoin d'utiliser la balise html <form method="POST" action="ton-fichier-php.php" >
<div>
<input type="search" id="maRecherche" class="texto" name="q" placeholder="Recherchez un produit" size="30"/>
<button type="submit" id="btt">
????
</button>
</div>
</form>
entre ton input type search et ton input type submit comme si dessus pour que le fichier PHP ton-fichier-php.php exécute la recherche et te retourne le résultat voulu.
Tu vas créer ensuite un fichier php dans cet exemple (ton-fichier-php.php) où tu vas écrire un code qui vas te permettre par exemple si les informations que tu recherches sont dans une base de donnée de les retourner et les afficher dans une page.
Exemple d'un petit code simple qui vas te permettre celà : alors dans le fichier php tu écrit.
<?php
/* 1er commentaire : connexion à la base de donnée */
/* la valeur localhost username et password doivent être modifié avec tes propres informations de connexion à ta base de données qui doivent rester confidentielle */
$servername = "localhost";
$username = "username";
$password = "password";
/* myDB doit être aussi changée par le nom de ta base de données */
try {
$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
/* maintenant que la connection avec la base de données est effectué on va récupérer la valeur de ce que tu as écrit dans ton input type search on vas s'intéresser à la valeur du name de ton input type search qui est q pour celà on vas stocker l'information de ton input type search dans une variable que l'on vas nommé variable par exemple une variable en php doit commencer par $ donc on écrit */
$variable = addslashes($_POST['q']);
/* remarque j'ai utilisé la fonction addslashes qui est très importantes pour éviter les attaques de type injection sql et aussi qui vas permettre de ne pas avoir de bug si un utilisateur saisie une apostrophe dans le input type search */
/* maintenant il faut se concentrer sur la table mysql qui contient les informations que l'on veut chercher je prend par exemple une table qui contient 3 colonnes ID ensuite DESCRIPTION ensuite NOM_PAGE_WEB ici je donne juste un exemple car je connais pas les tables de ta base de donnée juste pour que tu puisse comprendre */
/* et bien je vais sélectionner de la colonne DESCRIPTION tous les paragraphes qui contiennent le mot saisi dans le input type search avec le nom de leurs pages web que je vais récupérer de la colonne NOM_PAGE_WEB par exemple alors j'appel la fonction mysql */
?>
pas de problème, je vais t'aider, mais pour celà je dois savoir quel langage de programmation utilise ton site.
Exemple : Wordpress.
Ou Prestashop ou si c'est un site sur mesure fait à la main.
Ma première remarque :
1- Le langage html et css ne fait que créer la mise en page de ton site.
Il te faut utiliser un troisième langage comme php par exemple car va traiter les informations que tu vas saisir dans le input type search pour te retourner un résultat.
2- Dans ce cas tu auras besoin d'utiliser la balise html <form method="POST" action="ton-fichier-php.php" >
<div>
<input type="search" id="maRecherche" class="texto" name="q" placeholder="Recherchez un produit" size="30"/>
<button type="submit" id="btt">
????
</button>
</div>
</form>
entre ton input type search et ton input type submit comme si dessus pour que le fichier PHP ton-fichier-php.php exécute la recherche et te retourne le résultat voulu.
Tu vas créer ensuite un fichier php dans cet exemple (ton-fichier-php.php) où tu vas écrire un code qui vas te permettre par exemple si les informations que tu recherches sont dans une base de donnée de les retourner et les afficher dans une page.
Exemple d'un petit code simple qui vas te permettre celà : alors dans le fichier php tu écrit.
<?php
/* 1er commentaire : connexion à la base de donnée */
/* la valeur localhost username et password doivent être modifié avec tes propres informations de connexion à ta base de données qui doivent rester confidentielle */
$servername = "localhost";
$username = "username";
$password = "password";
/* myDB doit être aussi changée par le nom de ta base de données */
try {
$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
/* maintenant que la connection avec la base de données est effectué on va récupérer la valeur de ce que tu as écrit dans ton input type search on vas s'intéresser à la valeur du name de ton input type search qui est q pour celà on vas stocker l'information de ton input type search dans une variable que l'on vas nommé variable par exemple une variable en php doit commencer par $ donc on écrit */
$variable = addslashes($_POST['q']);
/* remarque j'ai utilisé la fonction addslashes qui est très importantes pour éviter les attaques de type injection sql et aussi qui vas permettre de ne pas avoir de bug si un utilisateur saisie une apostrophe dans le input type search */
/* maintenant il faut se concentrer sur la table mysql qui contient les informations que l'on veut chercher je prend par exemple une table qui contient 3 colonnes ID ensuite DESCRIPTION ensuite NOM_PAGE_WEB ici je donne juste un exemple car je connais pas les tables de ta base de donnée juste pour que tu puisse comprendre */
/* et bien je vais sélectionner de la colonne DESCRIPTION tous les paragraphes qui contiennent le mot saisi dans le input type search avec le nom de leurs pages web que je vais récupérer de la colonne NOM_PAGE_WEB par exemple alors j'appel la fonction mysql */
?>
Anis_web
Messages postés
61
Date d'inscription
vendredi 10 avril 2020
Statut
Membre
Dernière intervention
17 mai 2020
5
Modifié le 13 mai 2020 à 08:56
Modifié le 13 mai 2020 à 08:56
SUITE DU FICHIER ton-fichier-php.php
<?php /* ON SUPPOSE QUE LA TABLE SE NOMME information */ $search = '%'.$variable.'%'; $sql = "SELECT * FROM information WHERE DESCRIPTION LIKE '".$search."' "; $query = $conn->query($sql); ?> <!DOCTYPE html> <html> <head> <title>Retourner resultat</title> <style> body{ width:100%; padding:0; margin:0; position:relative; } </style> </head> <body> <table > <thead> <tr> <th>Mot saisi trouvé dans la description</th> <th>Nom d la page Web</th> </tr> </thead> <tbody> <?php while ($r = $query->fetch()): ?> <tr> <td><?php echo stripslashes($r['DESCRIPTION']); ?></td> <td><?php echo stripslashes($r['NOM_PAGE_WEB']); ?></td> </tr> <?php endwhile; ?> </tbody> </table> </body> </div> </html>
Anis_web
Messages postés
61
Date d'inscription
vendredi 10 avril 2020
Statut
Membre
Dernière intervention
17 mai 2020
5
13 mai 2020 à 09:03
13 mai 2020 à 09:03
Je vais te suivre dans le forum si tu as des soucis
Bonjour Anis,
Merci beaucoup pour ta réponse très développée !! J'utilise le serveur IONOS (anciennement 1&1), et j'ai beau décortiquer le mode DEV. je ne trouve aucun langage php, est-ce normal ? Est-ce qu'il y a un autre langage possible ou est ce que je peux insérer du php comme ça ?
Autre chose, j'ai vu qu'il y avait souvent écrit "runtime_url" pour rediriger vers une autre page, est-ce que ça pourrait ressembler à ce dont j'ai besoin ?
Je n'ai pas compris à quoi devait se référer "ton-fichier-php.php" ou plutôt comment créer un fichier php ?
On est bien d'accord que l'exemple de code que tu me proposes permet de faire une barre de recherche qui trouve des résultats internes à mon site ? En fait je souhaiterai un genre de barre de recherche comme celle que google propose de manière personnalisée avec un code HTML embarqué (le problème de celle-ci est qu'elle propose des pubs de concurrents parmi les résultats…).
En tous cas merci beaucoup d'essayer de rendre le langage informatique aussi lisible pour une non initiée !
Bonne journée
Merci beaucoup pour ta réponse très développée !! J'utilise le serveur IONOS (anciennement 1&1), et j'ai beau décortiquer le mode DEV. je ne trouve aucun langage php, est-ce normal ? Est-ce qu'il y a un autre langage possible ou est ce que je peux insérer du php comme ça ?
Autre chose, j'ai vu qu'il y avait souvent écrit "runtime_url" pour rediriger vers une autre page, est-ce que ça pourrait ressembler à ce dont j'ai besoin ?
Je n'ai pas compris à quoi devait se référer "ton-fichier-php.php" ou plutôt comment créer un fichier php ?
On est bien d'accord que l'exemple de code que tu me proposes permet de faire une barre de recherche qui trouve des résultats internes à mon site ? En fait je souhaiterai un genre de barre de recherche comme celle que google propose de manière personnalisée avec un code HTML embarqué (le problème de celle-ci est qu'elle propose des pubs de concurrents parmi les résultats…).
En tous cas merci beaucoup d'essayer de rendre le langage informatique aussi lisible pour une non initiée !
Bonne journée
Anis_web
Messages postés
61
Date d'inscription
vendredi 10 avril 2020
Statut
Membre
Dernière intervention
17 mai 2020
5
Modifié le 13 mai 2020 à 12:10
Modifié le 13 mai 2020 à 12:10
Tu peux m'envoyer l'url de ton site web que je puisse le voir afin de te préparer un code adapté.
Exemple : http://www.exemple.fr
A partir de l'url je peux connaitre le langage de programmation avec lequel ton site a été créé.
Exemple : http://www.exemple.fr
A partir de l'url je peux connaitre le langage de programmation avec lequel ton site a été créé.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Maya_labeille
Messages postés
1
Date d'inscription
mercredi 13 mai 2020
Statut
Membre
Dernière intervention
13 mai 2020
13 mai 2020 à 12:22
13 mai 2020 à 12:22
Est-il possible d'avoir un contact privé ? Que je te l'envoie par mail par exemple ?
Anis_web
Messages postés
61
Date d'inscription
vendredi 10 avril 2020
Statut
Membre
Dernière intervention
17 mai 2020
5
Modifié le 13 mai 2020 à 13:55
Modifié le 13 mai 2020 à 13:55
.