Temps dernier visite

Fermé
arthur - 30 avril 2019 à 14:28
 arthur - 30 avril 2019 à 22:59
Bonjour,

j'ai mis ce code

<?php
      //on vas crée une session pour afficher lorsqu'un pseudo se connecte et deconnecte
	  if (isset($_SESSION['pseudo']))
	  {
	  
	  //o affiche la connexion de la base donnée
	  try
	  {
	  $db = new PDO('mysql:host=localhost; dbname=site; charset=utf8', 'site', 'mdp');
	  
	  // Activation des erreurs PDO
	   $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
	   
	   // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
	   $db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
	   }
	   catch(PDOException $e)
	   {
	   die('Erreur : ' . $e->getMessage());
	   }
	   
	   $bdd->exec("INSER INTO membre_profil(membre_derniere_visite) VALUES(NOW()) WHERE utilisateur = $_SESSION['pseudo'] ");
	   }


?>


et sur ma page profil

' .AffDate($data['membre_derniere_visite']).'


le but de savoir qu’elle temps que le membre est déconnecter ou connecter

par exemple

si tu est connecter : il m'affichera il y a 10 s ou 5 minutes etc...

si tu te déconnecte il repartira à zéro il m'affichera il y a 5 seconde etc....

et il me dit



Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /var/www/legtux.org/users/site/www/V1/forum-tester/forumpremierchapitre/includes/identifiants.php on line 22


comment je doit faire pour qu'il puisse comprendre lor de la connexion et déconnexion de la dernière visite

Configuration: Windows / Chrome 73.0.3683.103

2 réponses

pour info j'ai ajouter a la requette

	   $bdd->exec("INSERT INTO forum_membres(membre_derniere_visite) VALUES(NOW()) WHERE utilisateur = $_SESSION['pseudo']");


et j'ai modifier

<?php
      //on vas crée une session pour afficher lorsqu'un pseudo se connecte et deconnecte
	  if (isset($_SESSION['pseudo']))
	  {
	  
	  //o affiche la conexion de la base donée
	  try
	  {
	  $db = new PDO('mysql:host=localhost; dbname=site<code basic>
; charset=utf8', 'ite', 'mdp');

// Activation des erreurs PDO
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
}
catch(PDOException $e)
{
die('Erreur : ' . $e->getMessage());
}

$bdd->exec("INSER INTO forum_membres(membre_derniere_visite) VALUES(NOW()) WHERE utilisateur = $_SESSION['pseudo'] ");
}


?></code>

et il me dit

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /var/www/legtux.org/users/site/www/V1/forum-tester/forumpremierchapitre/voirprofil.php on line 25


merci
0
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689
30 avril 2019 à 15:21
Bonjour,

Pour commencer.. tu n'as pas utilisé la bonne requête.
Un INSERT ... va insérer (créer) une nouvelle ligne dans ta bdd....
Toi ce que tu veux faire c'est un UPDATE (mettre à jour le champ... )
=> Je te laisse regarder la bonne syntaxe sur internet... c'est facile à trouver.


En ce qui concerne ton souci.... c'est dû au fait que tu utilises une variable tableau (un array) dans ta chaine ( ta requête )
Il faut modifier

$bdd->exec("INSERT INTO forum_membres(membre_derniere_visite) VALUES(NOW()) WHERE utilisateur = $_SESSION['pseudo']");

par
$bdd->exec("UPDATE ....forum_membres  .....   WHERE utilisateur = '".$_SESSION['pseudo']."'");



Ne pas oublier également de mettre CHAQUE requête dans un bloc TRY/CATCH tel qu'expliqué dans les liens que je t'ai déjà donné.


.
0
merci

j'ai mis ca à la base sql

membre_derniere_visite int 11
0
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689 > arthur
30 avril 2019 à 19:22
Oui...et ?
0
je laisse tomber lol
0