Page 1 sur 1

lient avec GET

Posté : 12 sept. 2011, 11:11
par Myliana
Bonjour a tous,

Je débute en php, je crée mon site (enfin j'essai) j'ai donc une zone inscription/connexion/déconnexion qui fonctionne bien.
La je voudrais faire une zone "profil" pour que vous le savez le membre puisse modifier son profil.

Seulement voila je veux faire un lien dans mon menu intitulé "profil" mais je ne sais pas comment le faire avec $_GET['id] ? Si oui comment le formuler ? car sa me renvoi soit des messages d'erreur soi rien du tout...

Je vous remercie d'avance

Re: lient avec GET

Posté : 12 sept. 2011, 11:27
par Mazarini
<a href="toto.php?id=12345">lien</a>
et dans toto.php, tu peux traiter $_GET['id']

Par contre il faut vérifier que $_GET['id') est défini (fonction isset()), c'est à dire que quelqu'un n'a pas mis "toto.php" directement dans le navigateur. De même, il faut vérifier la valeur qui a pu être modifiée par l'internaute.

Re: lient avec GET

Posté : 12 sept. 2011, 12:06
par Myliana
Merci pour ta réponse donc si j'ai bien compris ce n'est pas dans mon lien même que je me sert de GET ?

Car moi en bonne babache que je suis j'ai mis cela dans mon nemu
<?php if (isset ($_GET['id'])) { ?>
        <ul>
			<li><a href="index.php">Accueil</a></li>
		</ul>
        
<?php } else { ?>
        <ul>
		<?php($_SESSION['id']); ?>
			<li><a href="index.php?module=membres&action=afficher_profil">Profil</a></li>
		</ul>
et lorsque je clic sur profil j'ai mon message d'errreur comme quoi le profil n'est pa exsitant

Re: lient avec GET

Posté : 12 sept. 2011, 14:08
par Ryle
Logiquement, si ton utilisateur est passé par une phase d'inscription / connexion, cela veut généralement dire que tu as les informations de l'utilisateur connecté stockées en session (tout du moins son ID). A partir de là, pas besoin de mettre cette valeur dans tes liens, il suffit dans ta page profil, d'aller la chercher dans ta session (ce qui accessoirement évite aussi aux petits malin de changer l'identifiant du lien pour ouvrir le profil de quelqu'un d'autre) :)

En gros, tu aurais un lien "Editer mon profil" qui pointe vers ta page "profil.php" (ou autre), et dans profil.php, quand tu as besoin de récupérer l'identifiant de l'utilisateur pour charger ses informations, tu fais appel à ta variable $_SESSION['id'] qui je suppose contient l'id de l'utilisateur authentifié :)

Pour l'utilisation de $_GET (et $_POST), c'est effectivement pour récupérer une information qui a été envoyée par la page précédente (via l'url si c'est du get, ou un formulaire si c'est du post). Mais cela implique donc d'avoir fait apparaître l'identifiant dans l'url du lien cliqué par l'utilisateur...

Re: lient avec GET

Posté : 12 sept. 2011, 14:25
par Myliana
Merci pour ta réponse ! Voyons voir si j'ai bien tout compris....

mon lien reste donc "basique"

<li><a href="index.php?module=membres&action=afficher_profil">Profil</a></li>
Juste ça c'est cela ?

C'est dans "afficher_profil" que je dois faire appel a $_SESSION['id'] (oui tu suppose bien c'est l'id de l'utilisateur authentifié^^)c'est toujours ça ?
et dans "modifier_profil" également ? c'est cela ??

Pour $_GET ce n'est doncs pas une bonne idée de le mettre dans lien si je comprend bien^^

Re: lient avec GET

Posté : 12 sept. 2011, 15:02
par Myliana
Merci aus personnes qui m'on aider ! j'arrive a afficher le profil du membre me reste a bosser sur le lien permettant sa modification et donc les modification !