Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: amadoubah570, Jujudufoot, Killian_V, PaulLavieille
Ce topic a été résolu
Auteur Sujet: Moteur de recherche !

PrimFX
Membre Premium

Messages: 114

+1 pour @Killian_V haha Tire la langue

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 Sifflotant...
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 Sourire 
Publicité

Nobodief

Messages: 73

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

Messages: 123

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

Nobodief

Messages: 73

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

PaulLavieille

Messages: 123

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

Messages: 73

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

Messages: 123

D'acc merci Clin d'oeil
Le htaccess dans le dossier donc ?

Nobodief

Messages: 73

Dans le dossier ou il y a tes pages publique.


Veuillez vous connecter ou créer un compte pour poster une réponse