[RESOLU] afficher la dernière date de passage du visiteur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] afficher la dernière date de passage du visiteur

Re: afficher la dernière date de passage du visiteur

par fredodo73 » 01 mai 2018, 21:40

Mille merci @rthur, ça marche nickel ! Tu es vraiment super !

Re: afficher la dernière date de passage du visiteur

par @rthur » 01 mai 2018, 14:38

Tu peux faire un var_dump($courant ); pour débuguer et voir ce que tu demandes d'écrire dans le fichier.


Le problème vient du fait que tu essayes de faire un calcul, une soustraction de la variable $date par la variable $heure, ce qui ne peut pas fonctionner.
Si tu veux concaténer des chaines de caractères, il faut utiliser l'opérateur de concaténation point "." et surtout mettre ta chaine espace-tiret-espace entre guillemets :
$courant = $date.' - '.$heure;
A noter que si tu n'as pas besoin de tes variables $date et $heure ailleurs dans ton code, autant construire directement la variable que tu veux plutôt que d'en créer 2 que tu assembles ensuite :
$dateheure = date("d-m-Y - H:i");

Re: afficher la dernière date de passage du visiteur

par fredodo73 » 30 avr. 2018, 23:25

J'ai retravaillé mon code.
Je n'ai plus de message d'erreur qui s'affiche, par contre, lorsque je lis le fichier il ne s'affiche que le nombre 7, et lorsque je vais voir dans le fichier *.txt, il n'y a que le fameux chiffre 7, aucune date. Sans doute un souci à l'enregistrement, mais là je sèche complètement. car il me semble bien avoir vraiment respecter l'instruction ... une idée les boss ?

Code ci-dessous :
<?php
$date = date("d-m-Y");
$heure = date("H:i");
$fichier = 'compteurs/madernierevisite_anissa.txt';
// Ouvre un fichier pour lire un contenu existant
$courant = file_get_contents($fichier);
//
$courant = $date - $heure;
// Écrit le résultat dans le fichier
file_put_contents($fichier, $courant);
$voirladate = file_get_contents($fichier, $courant);
echo $voirladate;
?>

Re: afficher la dernière date de passage du visiteur

par @rthur » 30 avr. 2018, 18:20

Bonjour,

Mon conseil serait que tu utilises uniquement les fonctions file_get_contents() pour lire et file_put_contents() pour écrire.
Ça va te simplifier la vie.

Et vérifie les paramètres de file_put_contents(), tu ne l'utilises pas correctement : https://php.net/file_put_contents

afficher la dernière date de passage du visiteur

par fredodo73 » 30 avr. 2018, 16:23

Bonjour, je galère à afficher la dernière date de visite du site, sans BDD.

:priere: :priere: :priere: HELP ME PLEASE GUYS OR WOMENS ! :priere: :priere: :priere:

Voici mon code :
<?php
$date = date("d-m-Y");
$heure = date("H:i");
$madate = fopen('compteur/madernierevisite_anissa.txt',"r+");
$date_vue = fgets($madate); // On lit la première ligne (dernière date vue)
$dernieredate = file_put_contents('compteur/madernierevisite_anissa.txt', $date, $heure); // écrase le contenu du fichier
fseek($madate, 0); // On remet le curseur au début du fichier
fputs($dernieredate, $date_vue); // On écrit la nouvelle date
fclose($dernieredate);
echo("$date - $heure");
?>


La date s'affiche, mais ça me retourne les lignes suivantes : :

"Warning: fopen(compteur/madernierevisite_anissa.txt): failed to open stream: Aucun fichier ou dossier de ce type in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 52

Warning: fgets() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 53

Notice: A non well formed numeric value encountered in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 54

Warning: file_put_contents(compteur/madernierevisite_anissa.txt): failed to open stream: Aucun fichier ou dossier de ce type in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 54

Warning: fseek() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 55

Warning: fputs() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 56

Warning: fclose() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/www/Planning_franky/PlanningAnissa.php on line 57

Une idée les warriors du code svp ?