Moteur de recherche !

Ce topic a été résolu
Killian_V

Killian_V Le 28 mars 2016 à 22:44

Salut à toi,

Pour faire un moteur de recherche, c'est uniquement de la logique car c'est un algorithme qu'il faut utiliser. Ce que je te conseille de faire, c'est d'apprendre déjà les bases et ensuite tu pourras essayer de t'y attaquer ! Tout dépend du moteur de recherche que tu souhaites faire aussi. Si tu veux faire un moteur de recherche complexe, il va falloir faire un algorithme très complexe et difficile à mettre en place. A moins que tu apprennes à utiliser un framework qui sache gérer ce type de situation.

---
Killian
PrimFX

PrimFX Le 29 mars 2016 à 20:38

+1 pour @Killian_V haha 😋

Paul, si tu veux savoir si le fait de passer un id dans l'URL choquerait, j'ai envie de te répondre: Oui, mais pas trop quand même 😗...
On est tous passé par là: sur mes premiers sites, j'avais parfois 10 paramètres dans le genre qui passaient sans URL Rewriting, et autant dire que ça faisait plutôt moche, mais une fois que j'étais capable de maîtriser correctement ces paramètres, j'ai décidé de passer à l'URL Rewriting, en lisant, beaucoup, sur des forums, en anglais, français, etc. jusqu'à également maîtriser cette façon de gérer les URLs 😀 
Nobodief

Nobodief Le 2 avril 2016 à 02:25 (Édité le 2 avril 2016 à 02:25)

Ce code rewriting te permettra de transformer une page avec un get, il est adapté pour des caractères alphanumérique (chiffre ou lettre) :
RewriteEngine On
RewriteRule ^page/tutoriel/([a-zA-Z0-9\-\_]+)\.php?$       page.php?url=$1 [QSA,L]
Du coup là tu peux recherche n'importe qu'elle page présente dans ta base de données en indiquant son nom, donc dans ta base de données pour tes pages tu créer une nouvelle colonnes (url) et la tu met ta valeurs (sans espace), par exemple (tutoriel-pour-primfx).

Ensuite tu utilise un $_GET pour récupérer la valeur de ta colonne, ensuite grâce à l'url rewriting ci-dessus, cela convertira automatiquement ton url, pour affiché la page on pourra utiliser l'url principal : page.php?url=tutoriel-pour-primfx ou alors http://nomdedomaine/page/tutoriel/tutoriel-pour-primfx.php

Tu peux également affiché la page en html en remplaçant .php par .html dans l'url rewriting.

Si tu veux retirer les .php de tes pages dans les url tu peux utiliser cela :
RewriteEngine On
RewriteRule ^([a-zA-Z0-9\-\_]+)$ $1.php [L]
Ce qui donnerais au final :

RewriteEngine On
RewriteRule ^([a-zA-Z0-9\-\_]+)$ $1.php [L]
RewriteRule ^page/tutoriel/([a-zA-Z0-9\-\_]+)\.php?$       page.php?url=$1 [QSA,L]
PaulLavieille

PaulLavieille Le 2 avril 2016 à 14:51

Le mets ce code dans un .htacces dans le dossier ou il y a le page.php ?
Nobodief

Nobodief Le 2 avril 2016 à 16:07

Dans un htaccess situé à la racine de ton dossier, là ou sont tes pages sont présente.
PaulLavieille

PaulLavieille Le 2 avril 2016 à 16:15 (Édité le 2 avril 2016 à 16:18)

J'ai essayé mais j'y arrive pas.
Dans ma bdd j'ai mis "url"
dans le dossier ou il y a page.php j'ai mis le .htacces avec : 
RewriteEngine OnRewriteRule ^([a-zA-Z0-9\-\_]+)$ $1.php [L]RewriteRule ^page/tutoriel/([a-zA-Z0-9\-\_]+)\.php?$       page.php?url=$1 [QSA,L]

Mais je mets quoi dans le page.php ?
Nobodief

Nobodief Le 2 avril 2016 à 22:24 (Édité le 2 avril 2016 à 22:26)

Et bien maintenant ton url est bonne, il ne te reste plus qu'à coder ta page de façon à récupérer des informations précise suivant la page recherché à l'aide d'un GET.

Par exemple: 
// Je veux récupérer des valeurs de ma page nommé tutoriel, je vais donc vérifier si mon get correspond bien à cette valeur

if($_GET['url'] == 'tutoriel') {
   echo 'ma page est bien tutoriel !';
} else {
    echo 'Nous ne trouvons aucune page qui se nomme Tutoriel';
}
Bien-sur il faut tourner cela de façon à récupérer le get et à le comparer avec l'url de tes pages dans ta base de données pour ensuite en afficher les informations qui lui sont liés.

Sans oublier les fondamentaux, toutes tes url vont-être bouleversé et pour le coup les chemins d'accès vont-être modifié, moi personnellement je ne me casse pas la tête je met mes chemins d'accès depuis l'url de mon domaine.

Vérifie bien que les lignes que tu déclare dans htaccess sont en liste et non pas en ligne, c'est important.
PaulLavieille

PaulLavieille Le 3 avril 2016 à 22:19 (Édité le 3 avril 2016 à 22:19)

D'acc merci 😉
Le htaccess dans le dossier donc ?
Nobodief

Nobodief Le 4 avril 2016 à 12:57

Dans le dossier ou il y a tes pages publique.
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte