Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/09/2011, 16h39   #1
Membre régulier
 
Avatar de Jiraiya42
 
Inscription : mai 2005
Messages : 656
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2005
Messages : 656
Points : 76
Points : 76
Par défaut Fil d'ariane dynamique

Bonjour,

J'ai créé un site utilisant l'url rewritting. Dans ma base de données MySQL, j'ai une tabe page contenant le nom de la page dont les variables GET sont masquées par un 0 (exemple membre-0.html, où 0 représente l'id du membre). Dans cette table j'ai ajouté un champ pag_chemin contenant le chemin d'accès à la page (exemple : 1-7-40, représentant les id des pages séparées par un tiret)

J'arrive à reconstituer mon fil en affichant les titres des pages mais là où je bloque c'est pour les liens. Je ne sais pas comment stocker proprement l'id du membre tout au long de la visite pour afficher le lien.

Exemple :
Accueil >> Profil >> Edition mot de passe

Le lien de Profil sera membre-12.html et ce 12 il faut que je le conserve quand je serai sur Edition mot de passe (et su toutes les pages suivantes dans le fil). Refaire ma gestion du fil ne me fait pas peur si quelqu'un peut me donner un début d'idée qui rendra le fil plus flexible, car là ma solution ne me convient pas du tout...

Merci d'avance...
__________________
"Vous qui entrez ici, abandonnez toute espérance." Dante
Jiraiya42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 13h12   #2
Membre éclairé
 
Homme Gérard Okono
Développeur Web
Inscription : juillet 2006
Messages : 711
Détails du profil
Informations personnelles :
Nom : Homme Gérard Okono
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur Web
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juillet 2006
Messages : 711
Points : 328
Points : 328
Tu as 2 problèmes
  1. la réécriture des liens(URL rewriting)
  2. le fil d’Ariane.
Si n'est que pour ce dernier, voici un excellent lien :
Créer un "chemin de fer" (suite de lien donnant la position dans l'arborescence d'un site).
Des sujets comme Générer un plan d'un site sous forme de listes imbriquées peuvent aussi t’être utile
okoweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 08h34   #3
Membre régulier
 
Avatar de Jiraiya42
 
Inscription : mai 2005
Messages : 656
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2005
Messages : 656
Points : 76
Points : 76
Citation:
Envoyé par okoweb Voir le message
Tu as 2 problèmes
  1. la réécriture des liens(URL rewriting)
  2. le fil d’Ariane.
Si n'est que pour ce dernier, voici un excellent lien :
Créer un "chemin de fer" (suite de lien donnant la position dans l'arborescence d'un site).
Des sujets comme Générer un plan d'un site sous forme de listes imbriquées peuvent aussi t’être utile
Merci je vais déjà regarder ça

EDIT :
Tes liens sont biens mais ne résolvent pas mon problème. En effet, les auteurs partent du principe que le lien de chaque partie du fil d'ariane fait référence à un id de page ce qui n'est pas mon cas. Pour faire référence au profil d'un membre, je ne fais pas index.php?id=1 mais membre-1.html. Dans ma base de données, il raisonnablement impossible de multiplier ce lien (membre-X.html) avec chaque id de membre.

Je modifie ma question : Quelle est selon vous la manière optimale de gérer ces liens ? (format des liens, gestion dans la base etc.)

Merci d'avance...
__________________
"Vous qui entrez ici, abandonnez toute espérance." Dante
Jiraiya42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 09h47   #4
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 248
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 248
Points : 1 506
Points : 1 506
salut, j'ai envis de dire que les liens proposes par okoweb resolvent ton probleme (ou alors tu t'es mal exprime)

avec le tuto, tu auras dans ta page membre, l'id de la page. tu pourras donc retrouver le chemin vers ta page
genre mon site > membres
apres, tu affiche le nom du membre X. pour faire quelque chose genre
mon site > membres > [membre X]

je ne vois pas ou est le probleme
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h07   #5
Membre régulier
 
Avatar de Jiraiya42
 
Inscription : mai 2005
Messages : 656
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2005
Messages : 656
Points : 76
Points : 76
Citation:
Envoyé par Doksuri Voir le message
salut, j'ai envis de dire que les liens proposes par okoweb resolvent ton probleme (ou alors tu t'es mal exprime)

avec le tuto, tu auras dans ta page membre, l'id de la page. tu pourras donc retrouver le chemin vers ta page
genre mon site > membres
apres, tu affiche le nom du membre X. pour faire quelque chose genre
mon site > membres > [membre X]

je ne vois pas ou est le probleme
Sauf que l'id du membre est contenu dans le lien vers le profil donc, comme je l'ai précisé, il est impossible d'attribuer un id unique pour chaque profil (membre-1.html, membre-2.html, membre-3.html etc). C'est pour ça que dans ma base je stocke le modèle du nom de la page membre-0.html et dans mon code PHP je substitue le 0 avec le vrai id du membre passé en GET.

C'est pour ça aussi que je dis qu'il y a sans doute plus simple à faire. Avec l'id de la page en paramètre je veux bien, mais dans mon cas je ne vois pas comment l'appliquer.

Est-ce que j'ai été plus clair ?
__________________
"Vous qui entrez ici, abandonnez toute espérance." Dante
Jiraiya42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h16   #6
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 248
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 248
Points : 1 506
Points : 1 506
Citation:
Envoyé par Jiraiya42 Voir le message
et dans mon code PHP je substitue le 0 avec le vrai id du membre passé en GET.
si tu arrive a le passer en GET, tu peux aussi le recuperer...
Code php :
echo 'ton fil > membre > '.$_GET["membre_id"];
non ?
ou alors, j'ai rate quelque chose
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h31   #7
Membre régulier
 
Avatar de Jiraiya42
 
Inscription : mai 2005
Messages : 656
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2005
Messages : 656
Points : 76
Points : 76
Citation:
Envoyé par Doksuri Voir le message
si tu arrive a le passer en GET, tu peux aussi le recuperer...
Code php :
echo 'ton fil > membre > '.$_GET["membre_id"];
non ?
ou alors, j'ai rate quelque chose
Oui mais ma question est aussi de le conserver, dans ton cas :
Code php :
echo 'ton fil > membre '.$_GET["membre_id"].' > générer mot de passe';

En supposant par exemple que l'id soit transmise cette fois ci via POST. En traitant chaque lien au cas par cas il n'y a pas de soucis mais n'y aurait il pas moyen d'optimiser le système ? Car détecter chaque lien, détecter la variable GET, POST, détecter si c'est l'id d'un membre, d'une annonce etc c'est tout ce qui a de plus rigide...
__________________
"Vous qui entrez ici, abandonnez toute espérance." Dante
Jiraiya42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h44   #8
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 248
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 248
Points : 1 506
Points : 1 506
Citation:
Envoyé par Jiraiya42 Voir le message
Oui mais ma question est aussi de le conserver
bah du coup, je te dirais de passer par les variables de session...
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h50   #9
Membre régulier
 
Avatar de Jiraiya42
 
Inscription : mai 2005
Messages : 656
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2005
Messages : 656
Points : 76
Points : 76
Citation:
Envoyé par Doksuri Voir le message
bah du coup, je te dirais de passer par les variables de session...
Oui j'y avais pensé au départ mais ça me paraissait un peu bancal sauf ton respect

Tu as déjà appliqué cette solution ou c'est vraiment parce que tu n'en vois pas d'autre ? J'aimerais vraiment une solution pérenne.
__________________
"Vous qui entrez ici, abandonnez toute espérance." Dante
Jiraiya42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 18h07   #10
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 248
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 248
Points : 1 506
Points : 1 506
bah perso, pour mes petits sites j'ai toujours utilise les parametres GET pour ce genre de cas.
pour visualiser un membre par exemple : membre.php?id=12345
et pour les parametres du compte, je passe par les sessions.
pour eviter les urls comme edit_compte.php?id=12345
(et aussi pour d'autres details concernant l'utilisateur)

apres, pour les gros sites, en fonction du framework, c'est une autre histoire
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h33.


 
 
 
 
Partenaires

Hébergement Web