$ran=rand(1,40);
echo readfile($ran.".txt");
Беда в том, что при каждом обновлении страницы текст меняется, а хотелось бы, чтобы текст менялся, скажем раз в день.
Думал привязать это к кукам... но не у всех они включены...
Киньте в меня идеей, пожалуйста.
Спустя 10 минут, 56 секунд (5.08.2012 - 09:22) vagrand написал(а):
Ну как варинат создавайте файл с именем равным текущей дате и сохраняйте в него рандомное значение на сегодня. А при каждом запуске проверяйте существует ли файл для сегодняшней даты и если да, то читайте из него число, а если нет то генерируйте.
Спустя 2 минуты, 13 секунд (5.08.2012 - 09:24) Stasonix написал(а):
Еще вариант можно вешать какой-то ярлык на файл, вроде active, только конечно продумать тогда надо, напр. хранить табличку файлов в БД. А у vagrand дей-но еще все проще.
Спустя 42 минуты, 6 секунд (5.08.2012 - 10:06) account032 написал(а):
До БД еще не добрался, так что попробую вариант уважаемого vagrand.
Позже отпишусь о результатах. Спасибо)
Позже отпишусь о результатах. Спасибо)
Спустя 49 минут, 40 секунд (5.08.2012 - 10:56) account032 написал(а):
И так, очередная проблема - пробую создать файл с именем из переменной посредством:
Вместо этого получается просто файл "a.txt". В чём проблема?
$dn=$d[mday];
$fp=fopen($dn . 'a.txt', 'w');
Вместо этого получается просто файл "a.txt". В чём проблема?
Спустя 53 минуты, 25 секунд (5.08.2012 - 11:49) pak написал(а):
$dn=$d['mday'];
Спустя 12 минут, 36 секунд (5.08.2012 - 12:02) johniek_comp написал(а):
$today = date("d");
$file = file_get_contents("/".$today.".txt");
echo $file;
если создашь файл 05.txt, он откроется если сегодня 5-е число
Спустя 56 минут, 35 секунд (5.08.2012 - 12:58) account032 написал(а):
Кажется я чего то не понял.
Так, попробую по другому расписать.
Я вижу это функцией, которая создаёт текстовый файл названный по сегодняшнему числу плюс буква "а", типа 5а.txt. Затем функция записывает в этот файл рандомное число от 1 до 40. А так же удаляет вчерашний файл, т.к. в нём надобности нет.
Еще раз приведу своё решение, только более развёрнутое:
Но что-то мне уже подсказывает, что я всё делаю как-то не так....
Так, попробую по другому расписать.
Я вижу это функцией, которая создаёт текстовый файл названный по сегодняшнему числу плюс буква "а", типа 5а.txt. Затем функция записывает в этот файл рандомное число от 1 до 40. А так же удаляет вчерашний файл, т.к. в нём надобности нет.
Еще раз приведу своё решение, только более развёрнутое:
$ran;
function crfile()
{
$fp=fopen($d[mday] . 'a.txt', 'w');
fclose($fp);
$dt=($d[mday]-1);
if(file_exists($dt))
{
unlink($dt);
}
$ran=rand(1,40);
}
if(file_exists($d[mday] . 'a.txt'))
{
$fop=fopen($d[mday] . 'a.txt', 'r+');
if($fop)
{
$text=$ran.'.txt';
fwrite($fop, $text);
}
$fname=readfile($d[mday] . 'a.txt');
echo readfile($fname);
fclose($fop);
}
else
crfile();
Но что-то мне уже подсказывает, что я всё делаю как-то не так....
Спустя 26 минут, 15 секунд (5.08.2012 - 13:25) pak написал(а):
мож лутше так?
file_put_contents идентична функций fopen(), fwrite() и fclose().
filemtime показывает время последнего изменения файла
;)
$file = 'a.txt';
if(!file_exists($file) or date('j', filemtime($file)) !== date('j'))
{
file_put_contents($file, mt_rand(1, 40));
}
else
{
echo file_get_contents($file);
}
file_put_contents идентична функций fopen(), fwrite() и fclose().
filemtime показывает время последнего изменения файла
;)
Спустя 14 минут (5.08.2012 - 13:39) account032 написал(а):
Проблема была решена самым громоздким способом.
Для примера даю часть кода, думаю по ней будет всё ясно.
В index.php:
В rand.php даю отрывок громадины)))):
Спасибо всём за помощь... Т.к. начал не давно, еще есть трудности с пониманием. Буду вникать в советы и совершенствовать творение...
Для примера даю часть кода, думаю по ней будет всё ясно.
В index.php:
$dtg = date('D');
$pm = readfile($dtg.".txt");
echo readfile($pm.".txt");
include "rand.php";
В rand.php даю отрывок громадины)))):
.... И так далее)))
$dtm = date("D");
switch($dtm)
{
case "Mon":
if(!file_exists('Mon.txt'))
{
$fp=fopen('Mon.txt', 'w');
fclose($fp);
$fop=fopen('Mon.txt', 'r+');
$text=rand(1,40);
fwrite($fop, $text);
fclose($fop);
}
if(file_exists('Tue.txt'))
{
unlink('Tue.txt');
}
if(file_exists('Wed.txt'))
{
unlink('Wed.txt');
}
if(file_exists('Thu.txt'))
{
unlink('Thu.txt');
}
if(file_exists('Fri.txt'))
{
unlink('Fri.txt');
}
if(file_exists('Sat.txt'))
{
unlink('Sat.txt');
}
if(file_exists('Sun.txt'))
{
unlink('Sun.txt');
}
break;
Спасибо всём за помощь... Т.к. начал не давно, еще есть трудности с пониманием. Буду вникать в советы и совершенствовать творение...
Спустя 4 минуты, 46 секунд (5.08.2012 - 13:43) pak написал(а):
че та у тебя как-то всё сложно)
Спустя 32 минуты, 43 секунды (5.08.2012 - 14:16) account032 написал(а):
Сам понимаю.... это временное решение) Буду дальше ковырять в более спокойной обстановке...)