сам скрипт:
<?php
error_reporting(E_ALL);
function get_images($directory)
{
$filenames = array();
$directory = str_replace('\\', '/', $directory);
if(is_dir($directory))
{
$dp = opendir($directory);
while($filename = readdir($dp))
{
if(!is_dir($directory.'/'.$filename))
{
$file_ext = strtolower(substr($directory.'/'.$filename, strrpos($directory.'/'.$filename, '.')+1));
if(in_array($file_ext, array('jpg', 'gif', 'png', 'JPG')))
{
$filenames[count($filenames)] = $filename;
}
}
}
}
$dp = closedir();
return $filenames;
}
$path = '/images/'; // тут указываешь папку относительно корня веб дерева
$img_count = 9; // тут указываешь число картинок которое нужно выводить
$images = get_images($_SERVER["DOCUMENT_ROOT"].$path);
$i = 0;
while($images[@$i])
{
$npic = rand(0, count($images)-1);
echo '<a href="'.htmlspecialchars($path.$images[$npic]).'" target="_blank"><img src="'.htmlspecialchars($path.$images[$npic]).'" border="0" alt="" width="50" height="50" ></a>';
unset($images[$npic]);
$images = array_values($images);
$i++;
if($i>=$img_count) break;
}
?>
Сам вопрос вот в чем, не все фотогравии выводятся, пример в папке их 5 а выводятся 3, и еще пишет (Notice: Undefined offset: 3 in /home/u150/WWW/test.php on line 32)
И еще кое что кто нить помогите сделать так, чтобы картинки не меняли свои пропорции когда они уменьшаются.
Спасибо
Примечание:
Мне как раз нужны маленькие картинки, это будут дополнительные фото для товара, проблемма только в том что не выводит полное кол-во картинок которые есть в папке
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.