# Rakovskiy (03.01.2016 / 19:16)
А почему?
Ну во первых ты плодишь лишнии переменные, во вторых глобал зло (наверное). А в третьих почему бы не сделать как сделал я, передать массив файлов и пусть оно само там считает чего и сколь
Зачем нагромождать код кучей функций? ) На счёт глобал ты не прав. В такой маленькой функции одну единственную глобальную переменную не тяжело отыскать ))
# ДоХтор (03.01.2016 / 19:19)
Зачем нагромождать код кучей функций? ) На счёт глобал ты не прав. В такой маленькой функции одну единственную глобальную переменную не тяжело отыскать ))
Разделяй и властвуй.
Я не говорил о куче функций.
Ну вот тогда, подправил свой вариант:
<?php
function zapros($count = 3) {
if (!session_id())
session_start();
if (!isset($_SESSION['count']) || $_SESSION['count'] >= $count)
$_SESSION['count'] = 1;
else
$_SESSION['count']++;
return unserialize(trim(file_get_contents('http://site.site/zapros/'. $_SESSION['count'] .'zapros.php')));
}
$zapros = zapros();
if(!isset($kol_zap) || empty($kol_zap))
$kol_zap = 43;
$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 '<b><a href="' . $zapros[$i] . '">' . $zap . '</a></b>';
}
?>
# Swank (03.01.2016 / 19:20)
Ну вот тогда, подправил свой вариант:
<?php
function zapros($count = 3) {
if (!session_id())
session_start();
if (!isset($_SESSION['count']) || $_SESSION['count'] >= $count)
Да убери ты "if(!isset($kol_zap) || empty($kol_zap))" у тебя выше нет никаких операций с этой переменной.
У тебя в коде
один много костылей, не буду перечислять их.
А если нужно поменять ссылку? Не правильно это, пусть функция возвращает инкремент, а потом где нужно вставишь его.
Rakovskiy, У меня нету, а у ТС наверно есть если стоит такая проверка, я просто скопировал с его кода её.
Не думаю что нужно будет ему делать несколько вызовов с разными ссылками.
# SPONGE (03.01.2016 / 17:05)
куда именно добавить?
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;
}
// Впиши сюда правильные URL
$files = [
'http://site.name/zapros/1zapros.php',
'http://site.name/zapros/2zapros.php',
'http://site.name/zapros/3zapros.php',
];
$key = nextKey($files, 'slider');
$path = isset($files[$key]) ? $files[$key] : null;
if ($path && is_file($path)){
$items = unserialize(file_get_contents($path));
foreach ($items as $item){
if (is_string($item) && mb_strlen($item) < 2){
continue;
}
$label = str_replace('-', ' ', $item);
echo '<li><b><a href="/' . $item . '/">' . $label . '</a></b></li>';
}
}
# Swank (03.01.2016 / 19:31)
Rakovskiy, У меня нету, а у ТС наверно есть если стоит такая проверка, я просто скопировал с его кода её.
Не думаю что нужно будет ему делать несколько вызовов с разными ссылками.
Ну ты же претендуешь на деньги, сделай на совесть что бы он потом к тебе не бегал потому, что что-то поломалось.
Rakovskiy, Ему нужно только $kol_zap ссылок
# Swank (03.01.2016 / 19:20)
Ну вот тогда, подправил свой вариант:
<?php
function zapros($count = 3) {
if (!session_id())
session_start();
if (!isset($_SESSION['count']) || $_SESSION['count'] >= $count)
почти работает, еще нужно чтобы ссылка обязательно заканчивалась на "/" и чтобы был пробел между анкорами