Нужно чтобы при обновлении или переходи со страницы на страницу выводилась поочередно только одна строка из
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/1zapros.php') ) );
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/2zapros.php') ) );
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/3zapros.php') ) );
ниже сам код (заплочу 200вмр)
* (+/-)
<?php
global $kol_zap;
if(!isset($kol_zap) or empty($kol_zap)){
$kol_zap="43";
}
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/1zapros.php') ) );
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/2zapros.php') ) );
$zapros=unserialize( trim( @file_get_contents('http://site.name/zapros/3zapros.php') ) );
$cz=(count($zapros)<$kol_zap)?count($zapros):$kol_zap;
for($i=0;$i<$cz;$i++){
$zap = str_replace('-',' ',$zapros[$i]);
if(strlen($zapros[$i])<2) continue;
echo <<<GGG
<li><b><a href="/{$zapros[$i]}/">{$zap}</a></b></li>
GGG;
}
?>
Я в той теме написал. Дублирую:
Вопрос ещё актуален?
Строка должна меняться для всех юзеров или для каждого отдельно. Т.е. мне показывается файл 1, я обновляю и вижу второй файл. Когда другие заходят то у меня не меняется порядок.
У каждого пользователя свой порядок.
function nextKey(array $array, $cookieKey){
$myKey = isset($_COOKIE[$cookieKey]) ? abs($_COOKIE[$cookieKey]) : 0;
$nextKey = isset($array[$myKey]) && isset($array[$myKey + 1]) ? $myKey + 1 : 0;
setcookie($cookieKey, $nextKey, time() + 86400);
return $nextKey;
}
$files = [
'data/file1.txt',
'data/file2.txt',
];
$key = nextKey($files, 'slider');
$path = isset($files[$key]) ? $files[$key] : null;
if ($path && is_file($path)){
$file = file_get_contents($path);
echo $file;
}
$files - Массив с файлами которые нужно выводить.
Этот код будет выводить содержимое файла.
А, тебе строка нужна. Блин
Вот, указываешь путь в $path и всё.
function nextKey(array $array, $cookieKey){
$array = array_keys($array);
$myKey = isset($_COOKIE[$cookieKey], $array[$_COOKIE[$cookieKey]]) ? $_COOKIE[$cookieKey] : $array[0];
$nextKey = isset($array[$myKey]) && isset($array[$myKey + 1]) ? $array[$myKey + 1] : $array[0];
setcookie($cookieKey, array_search($nextKey, $array), time() + 86400);
return $nextKey;
}
$path = 'http://site.name/zapros/3zapros.php';
$file = unserialize(file_get_contents($path));
$key = nextKey($file, 'slider');
$url = isset($file[$key]) ? $file[$key] : null;
$label = str_replace('-', ' ', $url);
echo '<li><b><a href="/' . $url . '/">' . $label . '</a></b></li>';
еще хочу добавить что это не двиг Джона
Мой вариант поочерёдного вывода строки:
function cnt() {
global $kol_zap;
if (!session_id()) session_start();
if (!isset($_SESSION['cnt']) || $_SESSION['cnt'] >= $kol_zap) {
$_SESSION['cnt'] = 1;
} else {
$_SESSION['cnt']++;
}
return $_SESSION['cnt'];
}
if ($kol_zap == '') {
$kol_zap = '43';
}
$zapros = unserialize(trim(@file_get_contents('http://site.name/zapros/'. cnt() .'zapros.php')));
//$zapros = unserialize(trim(@file_get_contents('http://site.name/zapros/1zapros.php')));
//$zapros = unserialize(trim(@file_get_contents('http://site.name/zapros/2zapros.php')));
//$zapros = unserialize(trim(@file_get_contents('http://site.name/zapros/3zapros.php')));
(автор вроде бы говорил об оплате, но раз тут есть решения, то я никому не "насолю" своим)