Utilisation des sessions...

Fermé
stella841 - 30 mars 2009 à 21:54
Nieli Messages postés 83 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 23 avril 2009 - 31 mars 2009 à 01:19
Bonjour,

Pour le moment j'apprends le PHP/MySQL

Mon site en deux mots : je crée des articles d'informations juridiques où les clients inscrits et identifiés peuvent laisser des commentaires sur chacun des articles et pourquoi pas, créer eux-mêmes leurs propres articles...

J'ai compris comment créer un compte utilisateur. Sur ce forum, je posais la question de savoir : comment faire en sorte qu'un utilisateur inscrit et identifié, soit identifié comme tel sur TOUTES les pages du site. On m'a alors suggéré d'utiliser les SESSIONS et on m'a dirigé vers un site traitant de ce sujet.

Je souhaiterai avoir confirmation d'une chose, pour être sûre d'avoir bien tout compris :
-le client s'inscrit (ajout de données dans la BDD MYSQL)
-le client s'identifie (vérification des données). Les données sont OK :
-sur chaque page de mon site, j'introduis (avant tout html) " session_start() et je crée par exemple la superglobale : $_SESSION['nom'].
-sur chaque fichier php, j'ouvre une session_start() et ensuite je peux utiliser la superglobale $_SESSION['nom'] pour par exemple dire :
Bonjour <?php echo $_SESSION['nom'] ?>

Est-ce juste???

Là j'ai représenté l'utilité de $_SESSION , mais concrètement, comment créer une $_SESSION['nom'] qui prendra la valeur de 'Nom_utilisateur' présent dans la BDD MYSQL???

Par ailleurs, je disais que seuls les clients identifiés sur mon site pourront UTILISER les formulaires pour commenter un article. Comment subordonner l'usage du formulaire par un client à son identification??? Franchement je ne vois pas. (je précise bien 'UTILISER LES FORMULAIRES' en aucun cas il s'agit de masquer aux non inscrit la présence d'un formulaire permettant de réagir à un article).

Merci de me mettre sur la voie ;)
-

2 réponses

Eh Oh c'est pas bien le multi-thread è.é.
Bon voyons voyons.
Bon pour les sessions tu as tout compris (Tu apprends vite quand même).
Par contre pour éviter d'avoir à faire des session_start() partout, le mieux c'est de faire un seul fichier ou tu fais le session_start() et tu "inclus" le contenu des pages.
Par exemple :
index.php
Tu mets dedans tous les menus, les en-têtes etc et au milieu, tu fais :
switch($_GET["page"])
{
case "debat": include("debat.php");
break;
default: include("acceuil.php");
}

Et pour accéder à la page de débats : http://tonsite.fr/index.php?page=debat

Tu veux que le formulaire pour rajouter un message soit visible mais que les utilisateurs non inscrits ne puissent pas poster ?

Pourquoi ne pas juste masquer le formulaire? :/
0
Eh Oh c'est pas bien le multi-thread è.é. Quoi???

SUR L'UTILISATION DES SESSIONS :

Par contre pour éviter d'avoir à faire des session_start() partout, le mieux c'est de faire un seul fichier ou tu fais le session_start() et tu "inclus" le contenu des pages.
Par exemple :
index.php
Tu mets dedans tous les menus, les en-têtes etc et au milieu, tu fais :
switch($_GET["page"])
{
case "debat": include("debat.php");
break;
default: include("acceuil.php");
}


Euuhh là je ne comprends pas... Donc je laisse tomber les $_SESSION au profit des $_GET ??
0
Nieli Messages postés 83 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 23 avril 2009 6
31 mars 2009 à 01:19
*-un fichier accessible seulement aux IDENTIFIES, qui comprend mon article + un formulaire permettant des commentaires

*-un fichier accessible à tous par défaut, qui comprend mon article + un message informant qu'il faut soit s'identifier/soit s'inscrire 


Oula qu'est ce que c'est que ca!!
Trop compliqué ^^
SI t'es identifié
{
tu peux envoyer ton commentaire
}
SINON
{
Il faut vous <a>identifier </a> ou vous <a>inscrire</>
}


C'est à peu près ça mais sauf que c'est la visibilité du formulaire.
Tu peux entremêler du php et de l'html.

Donc ca donnerait :

<?php
//Si on a mis quelque chose dans la variable de session i.e que l'utilisateur s'est identifié.
if(isset($_SESSION["pseudo"]))
{
?>
<form>
<input text....
<input text....
</form>
<?php
}
else
{
echo "Vous devez vous inscrire pour poster un message";
echo "<a href="inscription.php">S'inscrire</a> ou <a href="login.php">Se logguer</a>";
}


(c'est Débilou, marre de pas pouvoir m'edit).

Concernant ta question pour le fichier session.php, je comprends pas bien ce que tu veux faire dans ce fichier, tu peux expliciter stp?

EDIT: Encore devancé ^^
0