Besoin de renseignement sur les sessions

Résolu
mictif Messages postés 105 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 14 février 2013 - 13 janv. 2006 à 22:44
mictif Messages postés 105 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 14 février 2013 - 14 janv. 2006 à 11:49
bonjour, je suis en train de creer un petit site et j'aimerais avoir
des information sur les sessions. j'ai lu divers tuto et source sur les
session mais... je dois etre bete mai je ne compred pas certain truc!!



dans mon site, j'ai creer un petit formulaire pour creer un compte et un pour s'authentifier



dans l'un comme dans l'autre, je commence avec session_start();



ensuite sur toutes mes pages je peux faire

echo "

L'id de la session est ".session_id()." ";

et donc verifier que la session est bien ouverte--> donc j'ai bien a faire a un membre:)





bon jusque la OK mais :

comment enregistrer une variable de session ?

comment la recuperer dans mes page pour pouvoir l'utiliser avec mes requete sql ?



merci d'avance !



ps : les reponses amenerons surement d'autre questions....

4 réponses

juki_webmaster Messages postés 947 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 5 avril 2008 3
13 janv. 2006 à 23:40
Bonjour,

La varible (type array ?) $_SESSION est une super-global, c'est a dire qu'elle peut etre utiliser depuis plusieurs pages independament, du moment que les sessions sont lancer au debut du script (en reference aux cookies renvoyer par le client HTTP (sessid)).

Des variables de sessions:

a.php :
<?php
session_start();
$_SESSION['truc'] = 'test';
echo '[b.php b.php]';
?>

b.php :
<?php
session_start();
if (isset($_SESSION['truc'])) { // ont verifit que la session existe
echo 'salut '.$_SESSION['truc']; // va afficher: "salut test"
// ont fait ce que tu veux avec la base SQL
// mysql_connect ...
$requette = 'INSERT into table ... blabla '.$_SESSION['truc'].' ... ';
@mysql_query($requette) or die('erreur mysql');
//...
}
else echo 'vous n\'etes pas identifier ou qoui ?';
?>

Pour les requettes SQL de n'importe quel type qu'elle soit, il est plus simple au niveau de la programmation de donner une variable qu'ont va remplir de la requette a effectué, au lieu de tout faire dans la mysql_query().

Quelques tuto a lire:

http://www.phpdebutant.org/article47.php
http://www.phpdebutant.org/article69.php
http://www.php.net/manual/en/ref.session.php
http://www.php.net/manual/fr/ref.session.php
3
mictif Messages postés 105 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 14 février 2013 2
14 janv. 2006 à 10:30
merci mais ca ne marche tjr pas !!

j'ai ma page qui inscript les memndre avec ca:





//enregistrement

session_start();

if((trim($entreprise!=""))&&(trim($pass!=""))&&(trim($mail))){



$sql = "INSERT INTO entreprise VALUES('','$entreprise','$pass','$mail',now())";

mysql_query($sql) or die('Erreur SQL !
'.$sql);



$sql "SELECT id_entreprise FROM entreprise WHERE nom_entreprise '".$entreprise."'";

mysql_query($sql) or die('Erreur SQL !
'.$sql);

$data = mysql_fetch_row($query);

$_SESSION['id']=$data[0];

mysql_close();

header('Location: ../index.php');

}



ensuite sur ma page index je commence par session_start();, du code html puis:

0
mictif Messages postés 105 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 14 février 2013 2
14 janv. 2006 à 11:09
j'ai regardé apres l'inscription ce qu'il y avait dans le fichier créé par la session :

il y a : id|N;





aidez moi snif :'(
0
mictif Messages postés 105 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 14 février 2013 2
14 janv. 2006 à 11:49
j'ai trouvé !!! merci :)
0
Rejoignez-nous