Old Oil Barrel
С нами с 09.09.04
Сообщения: 58531
Рейтинг: 14265
|
Добавлено: 22/03/10 в 15:33 |
Нужен небольшой скриптец, который бы на морде раз в 12 часов ротировал тумбы с урлами из списка.
Т.е. задаешь списком <a href="url1"><img src="img1" alt="" /></a><a href="url2"><img src="img2" alt="" /></a><a href="url3"><img src="img3" alt="" /></a>
скрипт из списка рендомно без повторений раз в 12 часов?
Сколько
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 22/03/10 в 17:01 |
вот скриптик, нужно два файла в urls.txt - исходные урлы, в randurls.txt пишется готовое
Код: |
<?
$dispay_urls = file("randurls.txt");
if(trim($dispay_urls[0])+43200 < time()){
$urls = file(dirname(__FILE__)."/urls.txt");
shuffle($urls);
$fp = fopen(dirname(__FILE__)."/randurls.txt","w+");
fwrite($fp, time()."\n");
foreach ($urls as $url)
fwrite($fp, trim($url)."\n");
fclose($fp);
$dispay_urls = $urls;
}else
array_shift($dispay_urls);
foreach ($dispay_urls as $url) {
echo "$url";
}
exit;
?> |
|
|
|
|
Клева
С нами с 07.02.04
Сообщения: 12781
Рейтинг: 3531
|
Добавлено: 27/03/10 в 07:52 |
а можно его модернизировать что бы он не все тумбы выдавал, а только случайные 8шт скажем?
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 27/03/10 в 09:47 |
да легко, добавить пару строчек
|
|
|
|
С нами с 02.11.08
Сообщения: 15
|
Добавлено: 29/03/10 в 21:51 |
Можно сделать так:
в файле url_list.txt храним урлы
Код: |
url_list.txt
$tumb[1]='<a href="url1"><img src="img1" alt="" /></a>';
$tumb[2]='<a href="url2"><img src="img2" alt="" /></a>';
$tumb[3]='<a href="url3"><img src="img3" alt="" /></a>';
$tumb[4]='<a href="url4"><img src="img4" alt="" /></a>';
$tumb[5]='<a href="url5"><img src="img5" alt="" /></a>';
$tumb[6]='<a href="url6"><img src="img6" alt="" /></a>';
$tumb[7]='<a href="url7"><img src="img7" alt="" /></a>';
$tumb[8]='<a href="url8"><img src="img8" alt="" /></a>';
$tumb[9]='<a href="url9"><img src="img9" alt="" /></a>';
$tumb[10]='<a href="url10"><img src="img10" alt="" /></a>';
и сам скриптик, выводит 5 случайных:
<?php
include"url_list.txt";
$kol_url=count($tumb);
for ($i=0; $i<5; $i++) {
$gal=rand(1,$kol_url);
echo"$tumb[$gal]";
for ($j=$gal; $j<$kol_url; $j++) {
$tumb[$j]=$tumb[$j+1];
}
$kol_url--;
}
?>
|
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 30/03/10 в 09:14 |
KILOMETER писал: | Можно сделать так:
в файле url_list.txt храним урлы
|
что-то мне подсказывает, что он будет работать не совсем как надо
|
|
|
|
С нами с 02.11.08
Сообщения: 15
|
Добавлено: 31/03/10 в 14:17 |
ibiz писал: | что-то мне подсказывает, что он будет работать не совсем как надо |
Тогда так:
Код: |
<?php
$tumb[1]='<a href="url1"><img src="img1" alt="" /></a>';
$tumb[2]='<a href="url2"><img src="img2" alt="" /></a>';
$tumb[3]='<a href="url3"><img src="img3" alt="" /></a>';
$tumb[4]='<a href="url4"><img src="img4" alt="" /></a>';
$tumb[5]='<a href="url5"><img src="img5" alt="" /></a>';
$tumb[6]='<a href="url6"><img src="img6" alt="" /></a>';
$tumb[7]='<a href="url7"><img src="img7" alt="" /></a>';
$tumb[8]='<a href="url8"><img src="img8" alt="" /></a>';
$tumb[9]='<a href="url9"><img src="img9" alt="" /></a>';
$tumb[10]='<a href="url10"><img src="img10" alt="" /></a>';
$kol_url=count($tumb);
for ($i=0; $i<5; $i++) {
$gal=rand(1,$kol_url);
echo $tumb[$gal];
for ($j=$gal; $j<$kol_url; $j++) {
$tumb[$j]=$tumb[$j+1];
}
$kol_url--;
}
?>
|
|
|
|
|
С нами с 21.06.05
Сообщения: 1788
Рейтинг: 1579
|
Добавлено: 31/03/10 в 15:13 |
код ниже
Последний раз редактировалось: samedi (31/03/10 в 23:18), всего редактировалось 2 раз(а)
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 31/03/10 в 18:23 |
KILOMETER писал: | Тогда так:
|
ну что-то все равно не так, как требуется в первом посте
|
|
|
|
С нами с 02.11.08
Сообщения: 15
|
Добавлено: 31/03/10 в 22:53 |
ibiz писал: | ну что-то все равно не так, как требуется в первом посте |
Тогда ВОТ как:
Код: |
<?
$fp2=fopen(dirname(__FILE__)."/urls.txt","r");
$urls = file("urls.txt");
$dat=stat("randurls.txt");
if($dat[10]+43200 < time()){
$fp=fopen(dirname(__FILE__)."/randurls.txt","w+");
$kol_url=count($urls);
for ($i=0; $i<5; $i++)
{
$gal=rand(0,$kol_url-1);
//echo"$urls[$gal]";
fwrite($fp, trim($urls[$gal])."\n");
for ($j=$gal; $j<$kol_url; $j++)
{
$urls[$j]=$urls[$j+1];
}
$kol_url--;
}
fclose($fp);
}
else{};
$rand_urls = file("randurls.txt");
foreach ($rand_urls as $url)
echo"$url";
?>
|
...и без повторов, и с ротацией один раз за 12 часов...
|
|
|
|
С нами с 21.06.05
Сообщения: 1788
Рейтинг: 1579
|
Добавлено: 31/03/10 в 23:17 |
Код: | <?php
define("SOURCE", "data.txt");
define("OUTPUT", "done.html");
define("COUNT", 3);
if (filemtime(OUTPUT) > time() - 60*60*12) { // 12 hours delay
$output = file_get_contents(OUTPUT);
} else {
$data = file(SOURCE);
shuffle($data);
$urls = array_slice($data, 0, COUNT);
$output = implode("\n", $urls);
file_put_contents(OUTPUT, $output);
}
echo $output; |
Последний раз редактировалось: samedi (11/04/10 в 21:11), всего редактировалось 1 раз
|
|
|
|
Клева
С нами с 07.02.04
Сообщения: 12781
Рейтинг: 3531
|
Добавлено: 11/04/10 в 14:41 |
а как сделать так что бы он только 8 тумб генерил?
|
|
|
|
С нами с 21.06.05
Сообщения: 1788
Рейтинг: 1579
|
Добавлено: 11/04/10 в 21:12 |
densa писал: | а как сделать так что бы он только 8 тумб генерил? |
Изменить значение COUNT.
|
|
|
|