PHP - Vider un fichier texte par PHP tous les 24 heure ?
10 messages • Page 1 sur 1
Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics
PHP - Vider un fichier texte par PHP tous les 24 heure ?
salut
j'ai fait des prouesse sur l'ecriture dans les fichier textes par php, je suis etonné moi meme
Cependant pour completer ceci je doit vider le fichier texte tous les jours (24 heure)
comment puis-je proceder ?
j'ai penser a une methode assez usine a gaz qui ne marche pas des masse :
metre un autre fichier texte nomé date avec la date du jours, et a chaque connection de visiteur sur le site ca compare la date actuelle a la date du fichier texte, et si elle son differente ca efface l'autre ficheir texte (qui contien les ip des visiteurs, nommé ip.txt) et ca marque la nouvelle date dans le fichier date.txt a la place, etc...
seulement voila ca tombe TOUJOURS sur "dates differentes : mise a jour de la date" (et ca la met bien a jour) et jamais sur "les dates son pareils : rien a changer" meme quan c'est le cas et exactement pareil aux chiffre pret malgrés tous.
peut etre existe t'il une autre soluction pour cela ? merci
j'ai fait des prouesse sur l'ecriture dans les fichier textes par php, je suis etonné moi meme
Cependant pour completer ceci je doit vider le fichier texte tous les jours (24 heure)
comment puis-je proceder ?
j'ai penser a une methode assez usine a gaz qui ne marche pas des masse :
metre un autre fichier texte nomé date avec la date du jours, et a chaque connection de visiteur sur le site ca compare la date actuelle a la date du fichier texte, et si elle son differente ca efface l'autre ficheir texte (qui contien les ip des visiteurs, nommé ip.txt) et ca marque la nouvelle date dans le fichier date.txt a la place, etc...
- Code: Tout sélectionner
$fdate=fopen("date.txt", "r+");
$contenue_date = fgets ($fdate, 6555);
// ------ Comparaison de la date du fichier et la date actuelle
$datenow = $date=formatdate(time()); // format date est uen fonction perso quie affiche la date au format 25 08 2005 par exemple.
$posdate2 = strpos($contenu_date,$datenow); // ca compare la date du fichier texte a celle actuelle
if ($posdate2 === false) {
echo '<br> dates differentes : mise a jour de la date';
fseek ($fdate, 0);
fputs ($fdate, $datenow);
} else {
echo '<br> les dates son pareils : rien a changer';
}
seulement voila ca tombe TOUJOURS sur "dates differentes : mise a jour de la date" (et ca la met bien a jour) et jamais sur "les dates son pareils : rien a changer" meme quan c'est le cas et exactement pareil aux chiffre pret malgrés tous.
peut etre existe t'il une autre soluction pour cela ? merci
Bonsoir,
Peut être que je tape à côté de la plaque mais ... pourquoi ne pas faire ainsi :
Tu compares la date de dernière modification de ton fichier ip à la date actuelle, si c'est la même tu fais rien, si elle est différente, tu supprimes le fichier ip.txt
Ensuite il te reste plus qu'à ouvrir ton fichier ip.txt en mode écriture, ce qui va le re-créer si inexistant ... non ?
Peut être que je tape à côté de la plaque mais ... pourquoi ne pas faire ainsi :
<?php
if ( date("d m Y", filemtime("ip.txt")) != date("d m Y") )
{
unlink("ip.txt");
echo '<br> dates differentes : suppression de l'ancien fichier';
}
else
{
echo '<br> les dates son pareils : rien a changer';
}
?>
Tu compares la date de dernière modification de ton fichier ip à la date actuelle, si c'est la même tu fais rien, si elle est différente, tu supprimes le fichier ip.txt
Ensuite il te reste plus qu'à ouvrir ton fichier ip.txt en mode écriture, ce qui va le re-créer si inexistant ... non ?
Dernière édition par CaYuS le Jeu Aoû 25, 2005 21:21, édité 2 fois.
Tu fais une tache CRON programmée toutes les 24h :
delete.php :
- Code: Tout sélectionner
php /delete.php
delete.php :
- Code: Tout sélectionner
<?php ftruncate("fichier.txt",0);?>
- /* jerome */
- Nouveau WRInaute
- Messages: 18
- Inscription: Mar Aoû 23, 2005 12:56
Oula tu te complique pour pas grand chose j'ai l'impression.
Deja ton test de date pourquoi tu fais un strpos ?
Simplement :
Mais a mon avis le plus simple serait encore d'écrire directement dans un fichier nommé avec la date du jour plutot ?
Au lieu d'écrire dans ip.txt et de le renommer toutes les 24h, tu écris dans ip_<ma_date>.txt
De cette facon le passage d'un jour a l'autre est automatique
Deja ton test de date pourquoi tu fais un strpos ?
Simplement :
- Code: Tout sélectionner
if($contenu_date==$datenow)
{
echo '<br> les dates son pareils : rien a changer';
}
else
{
echo '<br> dates differentes : suppression de l'ancien fichier';
}
Mais a mon avis le plus simple serait encore d'écrire directement dans un fichier nommé avec la date du jour plutot ?
Au lieu d'écrire dans ip.txt et de le renommer toutes les 24h, tu écris dans ip_<ma_date>.txt
De cette facon le passage d'un jour a l'autre est automatique
- /* jerome */
- Nouveau WRInaute
- Messages: 18
- Inscription: Mar Aoû 23, 2005 12:56
Ha non pardon j'ai du mal comprendre
En fait tu veux juste que le fichier soit remis a zero toutes les 24h ? Mais alors a quoi il sert ce fichier ?
Bref ta solution n'était pas si mal finalement, il suffit que tu compare correctement ta date (pas avec strpos() mais avec un ==).
En fait tu veux juste que le fichier soit remis a zero toutes les 24h ? Mais alors a quoi il sert ce fichier ?
Bref ta solution n'était pas si mal finalement, il suffit que tu compare correctement ta date (pas avec strpos() mais avec un ==).
Ou la la
ben dit donc je suis gaté
oui mon ebergeur gere bien els taches cron mais j'osais pas franchir le pas, il parais que c'est pas si facile que ça a mettre en place je me trompe ?
rottman merci tu semble callé, bravo
Borower oui ta methode m'interessen tu a tous compris, on pourais egalement le supprimer et le recree, mais la condition doit etre : tous les 24 heures, et c'est la ou le bas blesse...
TOMHTML merci de ce code il me sera precieux je parie
CaYuS ouff, la ca m'epate, ton code est fonctionelle là, tel quelle ?
je vais essayer demain mais j'ai eu plein de soluce differente, surtout n'hesitez pas d'ici demain si vous avez un avis sur la question ou une solution toute bete car souvent c'est tellement basique que on vois pas du 1er coup lol
edit : /* jerome */ pas bete du tous, masi pk je n'ai pas penssez au == plus tot, bon je verrais ça demain mais ca semble etre ce qui manquer a ma methode de base, bien que comme tu l'a dit je crois pas que ca sois la plsu legere mais bon
sinon j'ai besoin que d'un laps de temps de 24 heure pour que des gens accedent pas trop souvent a certain rubrique du site via leurs ip, etc, enfin bref gros dossier lol
rien de mechant
Merci de cette solidarité WRInautesque
ben dit donc je suis gaté
oui mon ebergeur gere bien els taches cron mais j'osais pas franchir le pas, il parais que c'est pas si facile que ça a mettre en place je me trompe ?
rottman merci tu semble callé, bravo
Borower oui ta methode m'interessen tu a tous compris, on pourais egalement le supprimer et le recree, mais la condition doit etre : tous les 24 heures, et c'est la ou le bas blesse...
TOMHTML merci de ce code il me sera precieux je parie
CaYuS ouff, la ca m'epate, ton code est fonctionelle là, tel quelle ?
je vais essayer demain mais j'ai eu plein de soluce differente, surtout n'hesitez pas d'ici demain si vous avez un avis sur la question ou une solution toute bete car souvent c'est tellement basique que on vois pas du 1er coup lol
edit : /* jerome */ pas bete du tous, masi pk je n'ai pas penssez au == plus tot, bon je verrais ça demain mais ca semble etre ce qui manquer a ma methode de base, bien que comme tu l'a dit je crois pas que ca sois la plsu legere mais bon
Merci de cette solidarité WRInautesque
- /* jerome */
- Nouveau WRInaute
- Messages: 18
- Inscription: Mar Aoû 23, 2005 12:56
Foxus a écrit:sinon j'ai besoin que d'un laps de temps de 24 heure pour que des gens accedent pas trop souvent a certain rubrique du site via leurs ip, etc, enfin bref gros dossier lolrien de mechant
Ha ben dans ce cas la l'idéal serait de stocker dans le fichier (ou dans une base sql ce serait le top) l'ip et le timestamp (date et heure a la seconde pret) lors de chaque acces.
Ensuite tu compare le timestamp actuel (fonction time()) et celui dans le fichier pour l'ip donnée et si ca fait plus de 24 heures alors tu autorise.
C'est un peu plus compliqué a développer mais tellement plus propre et efficace.
Parce qu'avec ton systeme, si qqun vient a 23h il peut revenir a 1h du matin puisque le fichier aura ete remis a zero a minuit.
Tu peux faire un truc fiable, propre en une dizaine de lignes en utilisant une base mysql.
Bon courage
Foxus a écrit:CaYuS ouff, la ca m'epate, ton code est fonctionelle là, tel quelle ?
Euh ... j'ose pas dire oui, car j'ai souvent l'habitude de parler trop vite...
Mais "chez moi", "j'ai testé" et "ça avait l'air de marcher" "tel quel".
Voilà, au moins je prends pas trop de risques là
Mais bon après je ne dis pas que c'est LA méthode, c'est une méthode parmi tant d'autres (cf les autres commentaires).
10 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Nouvelle version de GoogleStats : v1.1
- Article sur le fichier .htaccess
- Déclarer son fichier sitemap dans le fichier robots.txt
- Sortie de GoogleStats v2.01
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- Sitemaps : protocole commun pour Google, Yahoo et Live Search
- Comment gérer simplement les sitemaps de plusieurs sites au même endroit
- Plein de chiffres incroyables sur Google Maps
- Exalead rejoint le protocole Sitemaps.org
- Google Trends : un pas vers le web social ?
- php-Date, heure ou timestamps en php.... merci de m'aider ;)
- fichier.php.jpg == fichier.php sous free !!
- upload de fichier via PHP : taille variable du fichier créé
- probleme entre index.php centre.php et news.php
- [PHP] Appeler un fichier
- Parsage de fichier en Php
- fichier php.ini
- Fichier php de 500ko ?
- fichier txt et php
- zip un fichier en php
- PHP et fichier texte
- [PHP] upload de fichier
- [Résolu] Exécution fichier PHP
- referencer un fichier index.php
- Ecriture dans un fichier php
Consultez la description détaillée des produits ou services de Google suivants : Google Feed Fetcher
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités







le forum