Javascript php
Fermé
saha11
Messages postés
79
Date d'inscription
samedi 20 septembre 2008
Statut
Membre
Dernière intervention
2 février 2009
-
21 janv. 2009 à 16:24
saha11 Messages postés 79 Date d'inscription samedi 20 septembre 2008 Statut Membre Dernière intervention 2 février 2009 - 22 janv. 2009 à 09:57
saha11 Messages postés 79 Date d'inscription samedi 20 septembre 2008 Statut Membre Dernière intervention 2 février 2009 - 22 janv. 2009 à 09:57
A voir également:
- Javascript php
- Telecharger javascript - Télécharger - Langages
- Easy php - Télécharger - Divers Web & Internet
- Php?id=1 - Forum PHP
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- \R php ✓ - Forum PHP
8 réponses
Harricote
Messages postés
417
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
30 janvier 2011
41
21 janv. 2009 à 16:38
21 janv. 2009 à 16:38
Bonjour,
pourquoi veux-tu la supprimer en javascript ?
Php serait plus approprié !
pourquoi veux-tu la supprimer en javascript ?
Php serait plus approprié !
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
21 janv. 2009 à 16:41
21 janv. 2009 à 16:41
la session crée par php est enregistrée côté serveur, et javascript s'exécute côté client (navigateur), donc tu ne peux la détruire que par du php
la solution: Ajax
c'est une particularité de javascript qui permet d'appeler un script php en "arrière plan" donc un script php de deconnexion
la solution: Ajax
c'est une particularité de javascript qui permet d'appeler un script php en "arrière plan" donc un script php de deconnexion
saha11
Messages postés
79
Date d'inscription
samedi 20 septembre 2008
Statut
Membre
Dernière intervention
2 février 2009
1
21 janv. 2009 à 16:44
21 janv. 2009 à 16:44
Merci de vos réponse le problème c'est que je sait pas utilisé l'ajax comment faire
En faite moi je veut qu'une requête soit envoyé pour voir si utilisateur utilise le site sinon il est déconnecter
Je cherche depuis cematin mais je trouve pas ! lol
Merci de votre aide
En faite moi je veut qu'une requête soit envoyé pour voir si utilisateur utilise le site sinon il est déconnecter
Je cherche depuis cematin mais je trouve pas ! lol
Merci de votre aide
Harricote
Messages postés
417
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
30 janvier 2011
41
21 janv. 2009 à 17:40
21 janv. 2009 à 17:40
Eh bien, pour savoir si l'utilisateur n'est pas inactif sur ton site, il faut faire avec time :
if( (time() - $_SESSION['dernier_acces']) > 900)
{
$_SESSION = array();
}
Tu dois créer une session dernier_acces que tu mets quand il se connecte sur ton site :
// Il se connecte et alors si il est bien connecté, tu mets :
$_SESSION['dernier_acces'] = time();
et ensuite, sur chaque page de ton site, tu dois insérer le 1er code (
if((time() - $_SESSION['dernier_acces']) > 900)
{
$_SESSION = array();
}
)
Voilà, c'est tout !
if( (time() - $_SESSION['dernier_acces']) > 900)
{
$_SESSION = array();
}
Tu dois créer une session dernier_acces que tu mets quand il se connecte sur ton site :
// Il se connecte et alors si il est bien connecté, tu mets :
$_SESSION['dernier_acces'] = time();
et ensuite, sur chaque page de ton site, tu dois insérer le 1er code (
if((time() - $_SESSION['dernier_acces']) > 900)
{
$_SESSION = array();
}
)
Voilà, c'est tout !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
saha11
Messages postés
79
Date d'inscription
samedi 20 septembre 2008
Statut
Membre
Dernière intervention
2 février 2009
1
21 janv. 2009 à 21:15
21 janv. 2009 à 21:15
salut merci de ta reponse moi je part sur le principe que la personne ferme sont navigateur ou son onglet et donc dans ce cas la sa lui ferme la session
Ton code il est top mais ne marche que si la personne et toujour sur le navigateur
C'est pour sa que le cherche un truc en javascript ou en ajax
Merci de ton aide si tu a la solution je suis prenant lol
Ton code il est top mais ne marche que si la personne et toujour sur le navigateur
C'est pour sa que le cherche un truc en javascript ou en ajax
Merci de ton aide si tu a la solution je suis prenant lol
Harricote
Messages postés
417
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
30 janvier 2011
41
21 janv. 2009 à 21:27
21 janv. 2009 à 21:27
Salut,
il faut, dans ce cas que tu mettes ceci :
<?php if($_SERVER['HTTP_USER_AGENT'] === NULL)
{
$_SESSION = array();
}
?>
il faut, dans ce cas que tu mettes ceci :
<?php if($_SERVER['HTTP_USER_AGENT'] === NULL)
{
$_SESSION = array();
}
?>
saha11
Messages postés
79
Date d'inscription
samedi 20 septembre 2008
Statut
Membre
Dernière intervention
2 février 2009
1
22 janv. 2009 à 09:16
22 janv. 2009 à 09:16
bonjour,
J'ai essayé mais sa marche pas
OK j'ai vais essayé de détaillé le problème
J'ai une page qui m'affiche les utilisateurs en ligne j'ai donc rajouté dans ton code ceci
Mais sa ne marche toujours pas et quand je revient sur la page après avoir ferme le navigateur sa ne marche toujours pas l'utilisateur est toujour connecté
Merci beaucoup de ton aide et de prendre du temps pour m'aidé
J'ai essayé mais sa marche pas
OK j'ai vais essayé de détaillé le problème
J'ai une page qui m'affiche les utilisateurs en ligne j'ai donc rajouté dans ton code ceci
<?php if($_SERVER['HTTP_USER_AGENT'] === NULL) { $_SESSION = array(); mysql_query('DELETE FROM connectes WHERE ip =\'' . $_SERVER['REMOTE_ADDR'] . '\''); //qui va supprimer les utilisateurs non connecter et detruire la sessiion session_destroy(); } ?>
Mais sa ne marche toujours pas et quand je revient sur la page après avoir ferme le navigateur sa ne marche toujours pas l'utilisateur est toujour connecté
Merci beaucoup de ton aide et de prendre du temps pour m'aidé
Harricote
Messages postés
417
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
30 janvier 2011
41
22 janv. 2009 à 09:44
22 janv. 2009 à 09:44
Voilà, j'ai réfléchi et trouvé écrit ceci :
<?php
$_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR'];
if(isset($_SESSION['user_ip']))
{
$_SESSION = array();
mysql_query('DELETE FROM connectes WHERE ip =\'' . $_SERVER['REMOTE_ADDR'] . '\'');
session_destroy();
}
?>
Voilà, essaye et moi-même, j'ai essayé et ça avait marché donc....
<?php
$_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR'];
if(isset($_SESSION['user_ip']))
{
$_SESSION = array();
mysql_query('DELETE FROM connectes WHERE ip =\'' . $_SERVER['REMOTE_ADDR'] . '\'');
session_destroy();
}
?>
Voilà, essaye et moi-même, j'ai essayé et ça avait marché donc....
saha11
Messages postés
79
Date d'inscription
samedi 20 septembre 2008
Statut
Membre
Dernière intervention
2 février 2009
1
22 janv. 2009 à 09:57
22 janv. 2009 à 09:57
salut
voila le problème
voici le code qui gére la connexion
et voici le code qui gére la connexion
Quand j'utilise ton code ma page connexion ne prend pas en compte l'utilisateur connecté mais la session est bien detruit quand l'utilisateur ferme la fenetre
Merci
voila le problème
/*ma page d'accueil contien cela*/ <?php $_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR']; if(isset($_SESSION['user_ip'])) { $_SESSION = array(); mysql_query('DELETE FROM connectes WHERE ip =\'' . $_SERVER['REMOTE_ADDR'] . '\''); session_destroy(); } ?>
voici le code qui gére la connexion
<?php session_start(); // Connexion à MySQL mysql_connect("localhost", "root", ""); mysql_select_db("test"); $test = $_SESSION['login']; // ------- // ETAPE 1 : on vérifie si l'IP se trouve déjà dans la table // Pour faire ça, on n'a qu'à compter le nombre d'entrées dont le champ "ip" est l'adresse ip du visiteur $retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM connectes WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\''); $donnees = mysql_fetch_array($retour); if ($donnees['nbre_entrees'] == 0) // L'ip ne se trouve pas dans la table, on va l'ajouter { mysql_query('INSERT INTO connectes VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', ' . time() . ' , "'.$test.'")'); } else // L'ip se trouve déjà dans la table, on met juste à jour le timestamp { mysql_query('UPDATE connectes SET timestamp=' . time() . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\''); } // ------- // ETAPE 2 : on compte le nombre d'ip stockées dans la table. C'est le nombre de visiteurs connectés $retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM connectes'); $donnees = mysql_fetch_array($retour); // Ouf ! On n'a plus qu'à afficher le nombre de connectés ! echo '<p>Il y a actuellement ' . $donnees['nbre_entrees'] . ' visiteurs connectés sur mon site !</p>'; ?>
et voici le code qui gére la connexion
<?php session_start(); require_once("config.inc.php"); if($_GET['action']=="logout") { mysql_query('DELETE FROM connectes WHERE ip =\'' . $_SERVER['REMOTE_ADDR'] . '\''); session_destroy(); } require_once("fonctions.inc.php"); if($_POST) { $login = $_POST['login']; $mdp = $_POST['mdp']; if ($_POST['login'] and $_POST['mdp']) { if(verifierLogin($login, $mdp)) { header("Location: accueil.php"); $data = getInfosParId($login, $mdp); $_SESSION['id_utilisateur'] = $data['id_utilisateur']; $_SESSION['login'] = $data['login']; $_SESSION['dernier_acces'] = time(); $_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR']; } else { header("Location:index.php?error=1"); } } else { header("Location:index.php?error=2"); } } ?>
Quand j'utilise ton code ma page connexion ne prend pas en compte l'utilisateur connecté mais la session est bien detruit quand l'utilisateur ferme la fenetre
Merci