【问题标题】:How to place randomly selected images from a database at random locations on a page?如何将从数据库中随机选择的图像放置在页面上的随机位置?
【发布时间】:2019-10-17 18:38:32
【问题描述】:

我正在尝试在页面上的随机位置显示文件夹中的随机图像。

到目前为止,我已经尝试过使用 php,因为据我所知,它更适合从大型数据库中随机获取图像。但是,我想使到目前为止我使用 javascript 实现的图像可拖动。

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

    shuffle($all_images);

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

缺少什么?我需要添加 echo 或 img_src 吗?

【问题讨论】:

  • 打印$img, ...看看里面有没有什么。并粘贴输出。
  • 不明白你的意思,如果我把 $img 放在它的底部,它什么也不会显示

标签: php image random


【解决方案1】:

您必须使用echoprint 输出HTML &lt;img&gt; 标签。在下面的示例中,我只是循环播放打乱的图像并输出每个图像。

我还应该明确说明我正在使用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);

一旦你有了它,然后回到我原来的解决方案来实际输出标签。

【讨论】:

  • 谢谢,我从所有 php 代码输入中得到一个空白页。我正在使用 Godaddy,它说 php 已启用,所以我很茫然。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-28
  • 2023-03-12
  • 1970-01-01
  • 2012-03-01
  • 2018-02-19
  • 1970-01-01
相关资源
最近更新 更多