Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
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 20/03/2011, 13h51   #1
Nouveau Membre du Club
 
Étudiant
Inscription : juin 2006
Messages : 78
Détails du profil
Informations personnelles :
Âge : 24
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2006
Messages : 78
Points : 27
Points : 27
Par défaut Fermeture Session depuis fichier Js

Bonjour à tous,

J'ai un fichier application.js que je lance dans le head de ma page index.php.

Ce fichier contient des fonctions permettant de me logguer à Facebook mais aussi de lancer des fichiers php permettant de creer et supprimer une session PHP.

Voici le fichier application.js

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
// Facebook Connect
function auth_using_fb() {
 
	// Recuperation des donnees de l'utilisateur depuis FB
	var viewer  = FB.Facebook.apiClient.fql_query(
 
	  'SELECT uid, name, pic_square_with_logo,profile_url FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid,
 
	  function(results) {
	    update_userbox( results[0].uid,
						results[0].name,
	                    results[0].pic_square_with_logo,
	                    results[0].profile_url,
	                    'FB.Connect.logoutAndRedirect("http://www.jaimetoo.com/cayoteux/theme/scripts/deconnexion.php");return false;')
	  }
	);
}
 
 
// Le fonction generique met a jour #userbox avec les informations recuperees depuis les services
function update_userbox(uid, name, image, url, logout) {
 
	$.ajax({ // Requete ajax
		type: "POST", // envoie en POST
		url: "http://www.jaimetoo.com/cayoteux/theme/scripts/connexion.php", // url cible du script PHP
		data: "nom="+name+" vous êtes connecté", // données envoyées
   });
 
	// Remplissage des champs dans #userbox et affichage de ces derniers
	$('#userbox').html( "<img alt='"+name+"' src='"+image+"' />"
	                  + "<div class='infos'>Bienvenue <a href='"+url+"'>" + name + "</a><br />"
					  + "vous êtes maintenant connecté.<br />"
	                  + "<a href='http://www.jaimetoo.com/cayoteux/theme/scripts/deconnexion.php' onclick='" + logout + "'>Se déconnecter</a></div>" ).show();
 
	// On cache le champ Nom et les boutons de login des services
	$('#userinfo').hide();
 
	// Remplissage des champs en utilisant les donnees des services
	$('#name').val(name);
	$('#url').val(url);
	$('#image').val(image);
}
Voici le lien permettant de lancer les fonctions présentes dans ce fichier

Code :
1
2
 
<fb:login-button length="long" perms="email,user_birthday" onlogin="auth_using_fb();"></fb:login-button>
Ma session se crée correctement, je fais le test en affichant les variables de session dans un fichier PHP.

Fichier connexion.php

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php session_start(); ?> 
 
<?php
 
// Déconnexion de l'utilisateur
if (isset($_POST['nom']))
{
	$_SESSION = array();
	$_SESSION['logged'] = 1;
	$_SESSION['nom'] = $_POST['nom'];
}
 
?>
Le problème est lors de la déconnexion. Le fichier deconnexion.php est bien lancé, mais la session n'est pas détruite. La page test continue à m'afficher les valeurs des variables de session alors qu'elles devraient être détruites.

Fichier deconnexion.php

Code :
1
2
3
4
5
6
7
8
9
10
 
<?php
 
// Déconnexion de l'utilisateur
$_SESSION = array();
session_unset();
session_destroy();
Header("Location: http://www.jaimetoo.com/cayoteux/");
 
?>
Merci de votre aide
20cents est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/03/2011, 14h09   #2
Membre expérimenté
 
Avatar de nadox
 
Homme
Développeur
Inscription : février 2010
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : Développeur
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2010
Messages : 360
Points : 545
Points : 545
Bonjour,

Une petite idée/question : la fonction de connexion Ajax est lancée à chaque affichage des pages, même après redirection sur la page de déconnexion (on est alors reconnecté automatiquement) ?
nadox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/03/2011, 14h09   #3
Nouveau Membre du Club
 
Étudiant
Inscription : juin 2006
Messages : 78
Détails du profil
Informations personnelles :
Âge : 24
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2006
Messages : 78
Points : 27
Points : 27
Sorry je suis stupide, j'ai oublié le session_start() au début

Résolu donc !
20cents est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



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


 
 
 
 
Partenaires

Hébergement Web