<MyRusakov.ru />

WordPress 6 с Нуля до Гуру

WordPress 6 с Нуля до Гуру

Этот курс научит Вас созданию самых разных сайтов на самой популярной в мире CMS - WordPress. Вы увидите установку и настройку локального сервера, разбор каждой настройки, каждой кнопки и каждого пункта меню в панели WordPress.

Также Вы получите и всю практику, поскольку прямо в курсе с нуля создаётся полноценный Интернет-магазин, который затем публикуется в Интернете. И всё это прямо на Ваших глазах.

Помимо уроков к курсу идут упражнения для закрепления материала.

И, наконец, к курсу идёт ценнейший Бонус по тому, как используя ChatGPT и создавая контент для сайта, можно выйти на пассивный доход. Вы наглядно увидите, как зарегистрироваться в ChatGPT (в том числе, и если Вы из России), как правильно выбрать тему для сайта, как правильно генерировать статьи для него(чтобы они индексировались поисковыми системами) и как правильно монетизировать трафик на сайте.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Вывод изображений из директории + навигация
22.05.2013 00:46:58 Вывод изображений из директории + навигация Сообщение #1
Thomasan

Thomasan

Новичок

Новичок

Дата регистрации:
22.05.2013 00:09:24

Сообщений: 5

Здравствуйте, подскажите пожалуйста каким образом объединить два данных кода:
http://myrusakov.ru/php-dir-images.html
http://myrusakov.ru/php-page-navigation.html

У меня возникает проблема с тем, что в навигации используется импорт данных из базы, мне же нужно что бы импорт был не из базы, а как это выразиться из папки.

На деле, имеется страничка + папка с изображениями, в папке более 1000 картинок. Выводить на одной странице это просто "сложности", тем самым мне нужно разделить все постранично, что бы выводилось допустим по 30 изображений на страницу.
Профиль
22.05.2013 08:02:08 Вывод изображений из директории + навигация Сообщение #2
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Вот, набросал код:

<?php
$id = $_GET["id"];
function getExt($filename) {
return end(explode(".", $filename));
}
$dir = 'pictures/'; // Папка с изображениями
$count = 6; // Количество изображений на странице
if(!$id) $id = 1;
$start = $count * ($id - 1);
$finish = $start + $count;
$files = scandir($dir);
for ($i = $start; $i < $finish; $i++) {
if (($files[$i] != "." && ($files[$i] != "..") {
if((getExt($files[$i]) == "png" || (getExt($files[$i]) == "jpeg" || (getExt($files[$i]) == "jpg" || (getExt($files[$i]) == "gif") {
$path = $dir.$files[$i];
echo "<img src = '$path' alt = 'Изображение' width = '200px' height = '200px'/>";
echo "<br />";
echo "<br />";
}
}
}
$count_files = count($files);
$count_pages = ceil($count_files / $count);
for($i = 0; $i < $count_pages; $i++) {
$s = $i + 1;
echo "<a style = 'margin-right: 20px;' href = 'file.php?id=".$s."' title = '".$s."'>".$s."</a>";
}
?>
Профиль
22.05.2013 09:55:08 Вывод изображений из директории + навигация Сообщение #3
Thomasan

Thomasan

Новичок

Новичок

Дата регистрации:
22.05.2013 00:09:24

Сообщений: 5

Где то кроется ошибочка, т.к. ввел значение $count = 30;, а на первой странице выводит 28, на последующих все нормально, код таков:
<script type="text/javascript">
function openImageWindow(src) {
var image = new Image();
image.src = src;
var width = image.width;
var height = image.height;
window.open(src,"Image","width=" + width + ",height=" + height);
}
</script>

<?php
$id = $_GET["id"];
function getExt($filename) {
return end(explode(".", $filename));
}
$dir = 'images/'; // Папка с изображениями
$count = 30; // Количество изображений на странице
if(!$id) $id = 1;
$start = $count * ($id - 1);
$finish = $start + $count;
$files = scandir($dir);
for ($i = $start; $i < $finish; $i++) {

if (($files[$i] != "." && ($files[$i] != "..") {
if((getExt($files[$i]) == "png" || (getExt($files[$i]) == "jpeg" || (getExt($files[$i]) == "jpg" || (getExt($files[$i]) == "gif") {
$path = $dir.$files[$i];
echo "<img src='$path' alt='' width='200px' height='200px' onclick ='openImageWindow(this.src);' />&nbsp;"; // Выводим ссылку на изображение

}
}
}
echo "<br>"; // Отступ перед навигацией

$count_files = count($files);
$count_pages = ceil($count_files / $count);
for($i = 0; $i < $count_pages; $i++) {
$s = $i + 1;
echo "<a style = 'margin-right: 20px;' href = 'images.php?id=".$s."' title = '".$s."'>".$s."</a>";
}
?>
Профиль
22.05.2013 15:46:46 Вывод изображений из директории + навигация Сообщение #4
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Вроде все нормально, не понимаю в чем ошибка. Тем более вместо 30 - 28, не очень большая разница - пользователь не заметит
Профиль
22.05.2013 20:22:10 Вывод изображений из директории + навигация Сообщение #5
Thomasan

Thomasan

Новичок

Новичок

Дата регистрации:
22.05.2013 00:09:24

Сообщений: 5

Довольно заметно исходя из того, что на первой странице получается 1 столбик из 10 изображений, и два из 9. На остальных все по 10. Ладно, спасибо за навигацию, может решение и найдет само себя)
Профиль
23.05.2013 01:08:30 Вывод изображений из директории + навигация Сообщение #6
kuller

kuller

Продвинутый

Продвинутый

Дата регистрации:
28.02.2012 15:16:04

Сообщений: 51

<?php
$folder = 'files'; // папка с картинками
$max = 30;
if(is_dir($folder))
{
if($dir = opendir($folder))
{
while($file = readdir($dir))
{
if($file !="." && $file !=".."
{
$images[] = $file;
}
}
closedir($dir);
}else echo 'Невозможно открыть каталог';
}else echo 'Файл не является директорией';

$amount = count($images);
$pages = ceil($amount/$max);

$p = $_GET['page'];

if(!$p OR $p=='')
{
$nmin = 0;
$nmax = $max - 1;
}else{
$nmin = ($p * $max) - $max;
$nmax = ($max * $p) - 1;
}

# Вывод фотографий
for($i = $nmin; $i <= $nmax; $i++)
{
if($images[$i])
{
echo '<a href="'.$folder.'/'.$images[$i].'">';
echo '<img style="border:0px blue dashed; width:160px; height:120px;"
src="'.$folder.'/'.$images[$i].'"/>';
echo '</a>&nbsp;&nbsp;';
}
}
# Навигация
echo "</br></br>";
for ($n=1; $n<=$pages; $n++)
{
if($p != $n)
{
echo '<a href="index.php?page='.$n.'">['.$n.']</a>';
}
elseif ($p !== $n)
{
echo '['.$n.']';
}
}
?>
Профиль
23.05.2013 19:41:29 Вывод изображений из директории + навигация Сообщение #7
Thomasan

Thomasan

Новичок

Новичок

Дата регистрации:
22.05.2013 00:09:24

Сообщений: 5

С навигацией все отлично, теперь подводит открытие изображения по клику в отдельном окне.
onclick=openImageWindow(this.src);
использовал этот код, но если подставляю его в нынешний, то ничего не происходит.
if($images[$i])
{
echo '<img style="border:0px blue dashed; width:200px; height:200px; onclick=openImageWindow(this.src);"
src="'.$folder.'/'.$images[$i].'"/>';
echo '&nbsp;';
}

В чем ошибаюсь, перепробовал всяческие вариации кода.
Профиль
23.05.2013 19:47:55 Вывод изображений из директории + навигация Сообщение #8
Thomasan

Thomasan

Новичок

Новичок

Дата регистрации:
22.05.2013 00:09:24

Сообщений: 5

Разобрался, большое спасибо всем
Профиль
04.01.2015 09:03:12 Вывод изображений из директории + навигация Сообщение #9
Bridun

Bridun

Новичок

Новичок

Дата регистрации:
03.01.2015 08:43:01

Сообщений: 1

Привет всем  а как правильно прикрутить к это выводу слки виде назад вперед 

echo '<a href="index.php?page='. ($p -1) .'"> << </a>';

echo '<a href="index.php?page='. ($p +1) .'"> >> </a>';

проблема вчем например 7 фото а если кликать дальше то и и 8  и9 ит неостанавливается всмысле открывает пустое вникуда 
Профиль