Création d'un lexique
Résolu
Ifryona
-
Sandriine Messages postés 1255 Date d'inscription Statut Membre Dernière intervention -
Sandriine Messages postés 1255 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai une base de donnée contenant plusieurs nom de recettes. Je souhaite qu'elles soient accessibles via un moteur de recherche, mais également un lexique. Pour le moteur de recherche pas de soucis, par contre pour le lexique j'ai plus de mal.
J'ai essayé de trouver des tutoriels sur le net mais sans succès. Qulqu'un pourrait-il m'aider dans cette réalisation, ou me conseiller un tuto ?
Merci par avance,
Ifryona.
J'ai une base de donnée contenant plusieurs nom de recettes. Je souhaite qu'elles soient accessibles via un moteur de recherche, mais également un lexique. Pour le moteur de recherche pas de soucis, par contre pour le lexique j'ai plus de mal.
J'ai essayé de trouver des tutoriels sur le net mais sans succès. Qulqu'un pourrait-il m'aider dans cette réalisation, ou me conseiller un tuto ?
Merci par avance,
Ifryona.
A voir également:
- Création d'un lexique
- Creation compte gmail - Guide
- Création site web - Guide
- Création d'un compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
8 réponses
Je ne sais pas quel langage de programmation tu utilise.
En fait tu dois créer une page avec les lettres A,B,C,...Z qui sont des liens.
Quand on clique sur uen lettre il faut que tu fasse une requête SQL sur ta base pour rechercher les noms de recette qui commencent par la lettre sur laquelle on a cliqué.
En fait tu dois créer une page avec les lettres A,B,C,...Z qui sont des liens.
Quand on clique sur uen lettre il faut que tu fasse une requête SQL sur ta base pour rechercher les noms de recette qui commencent par la lettre sur laquelle on a cliqué.
Merci Sandrine pour ta réponse.
J'utilise PHP/MySQL et XHTML.
J'ai commencé à préparé une page avec une liste avec les lettres de l'alphabet en tant que lien, mais une fois que j'ai cliqué dessus, où vais- ? Est-ce que je dois créer 26 pages et sur chacune d'elle faire des requêtes ? Il doit surement y avoir une méthode beaucoup mieux, je n'en doute pas, mais j'avoue que je coince !
Merci par avance de votre réponse,
Ifryona.
J'utilise PHP/MySQL et XHTML.
J'ai commencé à préparé une page avec une liste avec les lettres de l'alphabet en tant que lien, mais une fois que j'ai cliqué dessus, où vais- ? Est-ce que je dois créer 26 pages et sur chacune d'elle faire des requêtes ? Il doit surement y avoir une méthode beaucoup mieux, je n'en doute pas, mais j'avoue que je coince !
Merci par avance de votre réponse,
Ifryona.
Sinon tu connais les ancres HTML ??
Ce sont des liens qui renvoient sur la même page, et qui descendent sur la page à un point précis. Par exemple, Wikipedia les utilise : quand tu clique sur un lien du sommaire, ça te descends la page jusqu'au titre correspondant (cf comme exemple : https://fr.wikipedia.org/wiki/Hypertext_Markup_Language
Ca pourrait être sympa de faire comme ça.
---
Autre solution :
Comme je t'ai dit précédemment quand tu clique sur la lettre A par exemple, tu génère une requête SQL qui cherchera dans ta base les noms de recette qui commencent par A.
Ce sont des liens qui renvoient sur la même page, et qui descendent sur la page à un point précis. Par exemple, Wikipedia les utilise : quand tu clique sur un lien du sommaire, ça te descends la page jusqu'au titre correspondant (cf comme exemple : https://fr.wikipedia.org/wiki/Hypertext_Markup_Language
Ca pourrait être sympa de faire comme ça.
---
Autre solution :
Comme je t'ai dit précédemment quand tu clique sur la lettre A par exemple, tu génère une requête SQL qui cherchera dans ta base les noms de recette qui commencent par A.
Oui je connais le système des ancres mais le soucis est que je vais avoir énormément de fiches à lister, c'est pourquoi je pense qu'il est plus simple de passer par une bdd, avec une requête.
Le soucis c'est que je ne suis pas experte en la matière et je ne trouve pas de tutoriel sur le net (ça doit pourtant bien se trouver !!! je dois surement pas faire la bonne recherche!)
Le soucis c'est que je ne suis pas experte en la matière et je ne trouve pas de tutoriel sur le net (ça doit pourtant bien se trouver !!! je dois surement pas faire la bonne recherche!)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alors tu envoi la lettre sélectionnée en POST ou GET (comme tu veux), et tu crée ta requete pour l'affichage
Exemple :
SELECT nom_recette
FROM RECETTE
WHERE nom_recette LIKE "$_POST['lettre']%"
==> Ca recherche les noms de recette dont le nom commence par la lettre qui a été envoyée grâce au formulaire.
le "%" signifie qu'il peut y avoir n'importe quelle lettre après.
Exemple :
SELECT nom_recette
FROM RECETTE
WHERE nom_recette LIKE "$_POST['lettre']%"
==> Ca recherche les noms de recette dont le nom commence par la lettre qui a été envoyée grâce au formulaire.
le "%" signifie qu'il peut y avoir n'importe quelle lettre après.
Montre moi le code d'exécution de ta requête que je regarde si je peux t'aider.
Bonjour Sandriine,
Voilà ce que j'ai mis dans ma page php :
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = "SELECT fic_nom_recette
FROM fiches_recettes
WHERE fic_nom_recetteLIKE '".$_GET['lettre']."%'";
echo $sql."<br /><br />";
$result = mysql_fetch_array ($sql);
print_r($result);
Maintenant, lorsque je clique par exemple sur A, ça me sort ceci :
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in .........."
Voilà ce que j'ai mis dans ma page php :
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = "SELECT fic_nom_recette
FROM fiches_recettes
WHERE fic_nom_recetteLIKE '".$_GET['lettre']."%'";
echo $sql."<br /><br />";
$result = mysql_fetch_array ($sql);
print_r($result);
Maintenant, lorsque je clique par exemple sur A, ça me sort ceci :
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in .........."
En bidouillant de mon côté j'ai corrigé quelques unes de mes erreurs ! Ma requête est celle-ci maintenant :
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = mysql_query ("SELECT fic_nom_recette
FROM fiches_recettes
WHERE fic_nom_recetteLIKE '".$_GET['lettre']."%'");
//echo $sql."<br /><br />";
while ($result = mysql_fetch_array ($sql, MYSQL_ASSOC)) {
print_r($result);
}
Il en ressort ceci :
Array ( [fic_nom_recette] => Abricots sur tarte)
Il semblerait que je sois sur la bonne voie ^^
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = mysql_query ("SELECT fic_nom_recette
FROM fiches_recettes
WHERE fic_nom_recetteLIKE '".$_GET['lettre']."%'");
//echo $sql."<br /><br />";
while ($result = mysql_fetch_array ($sql, MYSQL_ASSOC)) {
print_r($result);
}
Il en ressort ceci :
Array ( [fic_nom_recette] => Abricots sur tarte)
Il semblerait que je sois sur la bonne voie ^^
Alors dans ta requête déjà il doit y avoir un espace avant et après LIKE.
Essaye ça :
Si ça ne marche pas, essaye de etster d'abord ta requête dans MySQL, et de voir si elle marche.
Essaye ça :
$req="SELECT fic_nom_recette FROM fiches_recettes WHERE fic_nom_recette LIKE ".$_GET['lettre']."%"; $sql=mysql_query($sql); $result=mysql_fetch_assoc($sql); while($result) { echo $result['fic_nom_recette']."<br />"; }
Si ça ne marche pas, essaye de etster d'abord ta requête dans MySQL, et de voir si elle marche.
Je te remercie Sandrine pour ton aide !
J'ai continué à chercher de mon côté et j'ai enfin réussi !
Peut-être que ça interessera d'autres personnes, donc voilà le code que j'ai utilisé :
<?php
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = mysql_query ("SELECT fic_nom_recette, fic_lien
FROM fiches_recettes
WHERE fic_nom_recette LIKE '".$_GET['lettre']."%'") or die ("Erreur requete recettes : ".mysql_error());
while ($fiches_recettes=mysql_fetch_array($sql,MYSQL_ASSOC)){
?>
<a href="../upload/fiches-recettes/<?php echo $fiches_recettes['fic_lien']; ?>">
<?php echo $fiches_recettes['fic_nom_produit'] ; ?></a><br />
<?php
}//fin du while
?>
Merci encore d'avoir pris du temps pour m'aider !
Ifryona.
J'ai continué à chercher de mon côté et j'ai enfin réussi !
Peut-être que ça interessera d'autres personnes, donc voilà le code que j'ai utilisé :
<?php
if (isset($_GET['lettre'])){
$lettre=$_GET['lettre'];
}
$sql = mysql_query ("SELECT fic_nom_recette, fic_lien
FROM fiches_recettes
WHERE fic_nom_recette LIKE '".$_GET['lettre']."%'") or die ("Erreur requete recettes : ".mysql_error());
while ($fiches_recettes=mysql_fetch_array($sql,MYSQL_ASSOC)){
?>
<a href="../upload/fiches-recettes/<?php echo $fiches_recettes['fic_lien']; ?>">
<?php echo $fiches_recettes['fic_nom_produit'] ; ?></a><br />
<?php
}//fin du while
?>
Merci encore d'avoir pris du temps pour m'aider !
Ifryona.