Как разместить случайно выбранные изображения из базы данных в случайных местах на странице? - PullRequest
0 голосов
/ 17 октября 2019

Я пытаюсь отображать случайные изображения из папки в случайных местах на странице.

До сих пор я пытался использовать php, так как я понимаю, что он лучше подходит для случайного получения изображений из больших баз данных. Однако я хочу сделать изображения перетаскиваемыми, чего я достиг до сих пор, используя javascript.

<?php
    $all_images = glob("/images/*.{jpeg|jpg|png|gif}", GLOB_BRACE);

    shuffle($all_images);

    list ($img1, $img2, $img3, $img4) = $all_images; 

Чего не хватает? Мне нужно добавить эхо или img_src?

1 Ответ

0 голосов
/ 17 октября 2019

Вы должны вывести тег HTML <img>, используя echo или print. В следующем примере я просто зацикливаюсь на перемешанных изображениях и вывожу каждое из них.

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

<?php
$all_images = glob("/images/*.{jpeg|jpg|png|gif}", GLOB_BRACE);

shuffle($all_images);

foreach ($all_images as $image) {
    echo '<img src="'.$image.'">';
}

РЕДАКТИРОВАТЬ

хотя изображения не появляются, просто ';}?>

Вы уверены, что PHP включен и работает? Не могли бы вы подтвердить, заменив все в вашем файле на:

<?php
phpinfo();

Видите ли вы выходные данные своей конфигурации?

Если нет, то сначала вам нужно запустить интерпретатор PHP. Это выходит за рамки этого ответа.

Если вы это сделаете, тогда происходит что-то еще. Я удалил бы все ваши HTML-теги и просто попытался бы сначала вывести пути к изображениям. Обратите внимание, что я использую запятые , вместо канала | для разделения расширений файлов. Поиграйте с этим, пока не увидите список ваших файлов. Например:

<?php
// Play around with this until you see output.
$all_images = glob("/images/*.{jpg,png,gif}", GLOB_BRACE);

var_dump($all_images);

Как только вы это сделаете, вернитесь к моему исходному решению, чтобы фактически вывести теги.

...