Узнаете размер массива и выводите 3 записи. К примеру posledni = номер последнего элемента в массив( вычислить через размер массива); a=3; if (posledni >3) { while (a!=0) { выводим massiv[posledni - a +1]; a--; } } else {выводим весь массив}
Думаю доступно написал
Последний раз редактировалось Ispanec; 31.07.2012 в 22:15.
Ispanec, Нужно сделать на php , смысл я вижу в коде , тока сложновато по кускам разобрать , название масива я так понял posledni , но не вижу проверку на существования его и создание если его нету , (переменная a я понял выступает в роли лимита , а может я и не так понял))
---------- Сообщение добавлено 17:32 ---------- Предыдущее 17:31 ----------
Сообщение от Keanor
используй сессии. Гугл по функции session_start()
Только для хранения масива , а так смысла не вижу все в него записывать , это стока инфы , вообще совет не понятен
---------- Сообщение добавлено 17:41 ---------- Предыдущее 17:32 ----------
Сообщение от Ispanec
Думаю доступно написал
Думаю понял бы сразу если бы чаще работал с ними а так не очень(
Последний раз редактировалось kvins; 31.07.2012 в 22:35.
А вам собственно это и надо, сессия создается для каждого посетителя и хранит только его просмотры (массив 3-х последних id товара, к примеру), после закрытия браузера сессия удаляется, очень удобно.
Ispanec, Спасибо очень помогаешь , но проблема в том если перезагружать 1 и туже страницу он дублируется , как сделать так чтобы дубли не записывать ???
kvins, не совсем понял что надо. По этому напишу два возможных решения:
Если массив больше нигде не используется, то после вывода информации можно удалить массив(при последующем обходе в массив будет записываться новая информация): unset($mas);
Если же массив необходим, то прежде чем добавлять новый элемент, его надо проверить на дубли:
$konditat_na_dobavlenie = "ссылка"; // проверяем нет ли в массиве данной ссылки $bool = false;
foreach($mas as $m) { if ($m == $konditat_na_dobavlenie) { $bool = true; break; } } if ($bool != true) // если в массиве нет данной ссылке, то добавляем ее в массив { $mas[] = $konditat_na_dobavlenie; }
но разве большое хранение в сесии данных не нагружает пользователя или сервер , даже если выводится всего 3 товара ?? а вдруг он на 200 страницах побывает =)
Пользователя не нагружает совсем, работает сервер. Не надо сохранять все посещения, сохраняйте 3 последние, функции php которые будут вам полезны:
array_search() - ищем значение, если такого в массиве нет, добавляем. count() - считаем количество элементов в массиве. Если меньше или равно 3 переходим к следующему этапу, если больше 3 удаляем первый элемент array_shift()