Autor Zpráva
smallcastle
Profil *
Prosím o radu. Mám php script, ve kterém se mi vytváří soubor data.txt ($soubor = fopen ("data.txt", "a+");). do tohoto souboru ukládám data, které pak vypisuji. Potřeboval bych ale tento soubor jednou týdně automaticky smazat z adresáře - třeba v úterý v 10:00h. Je nějaká možnost jak toho docílit ? děkuji
Alphard
Profil
cron
nebo se vzdát načasování a při každém přístupu kontrolovat, jestli je ideální čas a případně smazat
smallcastle
Profil *
jj, tak prosím o pomoc při realizaci, jsem uplný amatér
Kcko
Profil
jednodusse... neni treba cron ...

mohlo by fungovat neco jako

$dnesniDatumSoubor = date("d-m-Y" . "_soubor.txt"); // dnes napr. 08-06-2007_soubor.txt
if (is_file($dnesniDatumSoubor))
{
unlink($dnesniDatumSoubor);
}


Nicmene v otazce se ale ptas na uplne neco jineho ...
smallcastle
Profil *
díkuji za vysvětlení - zkusím si s tím pohrát . A to vymazání jednou týdně by šlo nějak udělat ?
DJ Miky
Profil
A to vymazání jednou týdně by šlo nějak udělat ?

Jak už tu bylo řečeno, CRON. Poptej se na tvém hostingu nebo využij nějaký webový cron.
smallcastle
Profil *
Dostal jsem od svého postytovatele www stránek odpověď, že tuto službu neposkytuje, ale že to prý jde udělat pomocí php skriptu. Jestli někdo máte nějaký nápad, bylo by to super. dík
djlj
Profil
Jestli někdo máte nějaký nápad, bylo by to super.
Viz Kcko.
smallcastle
Profil *
skript od Kcka funguje, ale mám ještě jeden problém, do toho souboru data.txt se postupně zapisují data od různých lidí, kteří potvrzují účast k danému dni. Takže ten název souboru by se po každém připsání změnil a to smazání by neproběhlo korektně ve správný čas. Možná by šla použít nějaká podmínka o existenci souboru a pak již nic nepřepisovat. A ještě bych musel stejně pořád to datum smazání přepisovat :-(
smallcastle
Profil *
tak jsem to vyřešil takhle - čas ukáže, jestli to bude fungovat

<?php
$den_v_tydnu = date("w");
SWITCH ($den_v_tydnu)
{
CASE 0;
echo "Dneska se neregistrujte ! ";
if (file_exists("data_s.txt")):
{
if (unlink("data_s.txt"));
}
else:
endif;
BREAK;
CASE 1;
echo "Konec přihlášení:<br> <b>5 dnů</b>";
BREAK;
CASE 2;
echo "Konec přihlášení:<br> <b>4 dny</b>";
BREAK;
CASE 3;
echo "Konec přihlášení:<br> <b>3 dny</b>";
BREAK;
CASE 4;
echo "Konec přihlášení:<br> <b>2 dny</b>";
BREAK;
CASE 5;
echo "Konec přihlášení:<br> <b>1 den</b>";
BREAK;
DEFAULT:
echo "Dneska se hraje !";
}
?>
djlj
Profil
smallcastle
Použij databázi.
smallcastle
Profil *
O databázi jsem už také uvažoval, ale pořád jsem nikde nanašel, jestli umí mazat soubory podle dne v týdnu.
oran
Profil *
:D :D nemyslel na mazani souboru... narval bys to do databaze a jen mazal radky...
smallcastle
Profil *
jasně, špatně jsem to napsal a už jsem tu nechtěl psát další příspěvek na opravu - mám ale dotaz, jak docílím toho, aby se mi v databázi jednou týdně smazaly data, to právě nemůžu nikde najít.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0