Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Kurmanaliev K
0 / 0 / 0
Регистрация: 18.02.2016
Сообщений: 49
1

Foreach внутри foreach

26.05.2017, 06:49. Просмотров 2105. Ответов 1
Метки нет (Все метки)

Посетители сайта видят список альбомов в мозаичном виде по 3 альбома в ряд, 12 альбомов на
страницу. Обязательно реализовать постраничную навигацию при выводе списка альбомов.
В списке выводится первая фотография из загруженных в альбом и под ней название альбома.
Альбомы отсортированы в том порядке, какой им присвоил администратор в админке, а если
порядок не определен, то по дате создания в обратном порядке (более свежие впереди).
При нажатии на основную фотографию или на название альбома, посетитель попадает в
полную версию альбома. В полной версии альбома крупно выводится название альбома,
мелко дата создания и под ними следует текст из поля Описание альбома.
Под текстом в мозаичном виде выводятся все фотографии альбома без постраничной
навигации. По 4 в ряд. Предусмотреть красивое расположение в ряду как горизонтальных, так
и вертикальных снимков. При нажатии на фотографию экран затемняется и фотография
разворачивается на весь экран, при этом не выходя за его пределы. Под фотографией
выводится ее название, заданное в админке.

меня волнует выделенная часть
вот скрипт
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
define("SITE", "test.kg");
define("DBHOST", "localhost");
define("DBUSER", "root");
define("DBPASS", "born21062000");
define("DBNAME", "galery");
$db = mysqli_connect(DBHOST, DBUSER, DBPASS, DBNAME) or die("No connect");
mysqli_set_charset($db, "utf8") or die("No work");
global $db;
$query = "SELECT id, name, about FROM albom";
$res = mysqli_query($db, $query);
$images = array();
while($row = mysqli_fetch_assoc($res)) {
$images[$row['id']] = $row;
}
$db1 = mysqli_connect(DBHOST, DBUSER, DBPASS, DBNAME) or die("No connect");
mysqli_set_charset($db1, "utf8") or die("No work");
global $db1;
$query1 = "SELECT id, id_albom, name FROM images";
$res1 = mysqli_query($db1, $query1);
$images1 = array();
while($row1 = mysqli_fetch_assoc($res1)) {
$images1[$row1['id']] = $row1;
}
print_r($images1);
?>
    <html lang="en">
 
    <head>
        <meta charset="UTF-8">
        <title>Galery</title>
        <link rel="stylesheet" href="/css/main.css" type="text/css">
        <link rel="stylesheet" href="/backend/css/form.css" type="text/css">
    </head>
 
    <body>
        <a href="/backend/">
            <div class="btn_blue" style="margin-right: 20px">Вход</div>
        </a>
        <div style="clear: both"></div>
        <?php if($images): ?>
        <?php foreach($images as $image): ?>
        <?php
        foreach($images1 as $image1){
            echo $image1['name'];
        }
        ?>
        <a href="/images.php?id=<?php echo $image['id']?>">
            <div class="article">
                <img src="/img/<?php  ?>">
                <span><?=$image['name']?></span>
            </div>
        </a>
        <?php endforeach; ?>
        <?php endif; ?>
    </body>
 
    </html>
PHP
1
2
3
foreach($images1 as $image1){
            echo $image1['name'];
        }
этот цикл выдает два раза
99728655.jpgaudi-s4-black-zadok-dom.jpg 99728655.jpgaudi-s4-black-zadok-dom.jpg
а должен
99728655.jpg audi-s4-black-zadok-dom.jpg
можно как нибудь отрезать хвост
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2017, 06:49
Ответы с готовыми решениями:

Сортировать внутри foreach
Здравствуйте друзья! Есть код, который нормально работает и выводит то, что нужно! Но тут...

Перевод текста в транслит внутри foreach
Хочу загружаемый файл переделать в транслит, для транслита планирую брать такую функцию: ...

Как внутри foreach сдвинуть указатель массива вперед?
День добрый. Получаю выборку с sql так $stmtt = $connection-&gt;prepare(&quot;select * from tablenum...

Вывод выбранных чекбоксов в таблице, которая внутри foreach
Добрый день, друзья! Прошу помочь в написании кода. В приведенном примере checked вставится 3 раза...

foreach
не могу понять почему следующий код выдаёт &quot;2 3 4 5 4&quot;, а не &quot;2 3 4 5 6&quot;: &lt;?php $array =...

1
plohoyav
299 / 311 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
26.05.2017, 17:12 2
Получается, в каждом альбоме вы показываете имена всех изображений, без фильтра, принадлежит оно альбому или нет

PHP
1
2
3
4
5
6
<?php foreach($images as $image): ?>
        <?php
        foreach($images1 as $image1){
            echo $image1['name'];
        }
        ?>
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2017, 17:12

Foreach
Есть метод который возвращает разметку return &quot;&lt;div class='test'&gt;$name&lt;/div&gt;&quot; есть массив $items...

Foreach($p as $p)
Привет всем, зачем-то решил проверить будет ли работать такая штука - foreach($p as $p) echo $p;...

FOREACH
Доброго времени всем! есть таблица в БД, как на странице прорисовать с помощью foreach CREATE...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.