PHP MySQL 数据库图像切换器

标签 php mysql slider

我构建了一个运行良好的小 uploader ,将图像文件路径上传到我的数据库,并将图像存储在文件夹中。
现在,我还进行了一次调用,该调用将仅调用与它分配的属性 ID 具有相同 ID 的图像。

我遇到问题的地方是图像显示,我正在寻找一种在数据库中的图像之间切换的简单方法,但即使在那之前,我也需要知道为什么数据库调用只显示存储在数据库。

到目前为止,这是我的代码: PHP

    if ($id) {
        $query = "SELECT houses.*, gallery_photos.* " .
                "FROM houses LEFT JOIN gallery_photos " .
                "ON $id = gallery_photos.photo_category";

        $result = mysql_query($query) or die(mysql_error());
    }


// Print out the contents of each row into a table 
    while ($row = mysql_fetch_array($result)) {
        $images_dir = "houses";
        $photo_caption = $row['photo_caption'];
        $photo_filename = $row['photo_filename'];
        $photo_id = $row['photo_id'];



        }

显示是通过一个更大的 ECHO 命令进行的,我会添加一些这样你就明白了:

在 ECHO 中

 echo "
 <li>
          <div id='imagizer'> <img src='" . $images_dir . "/" . $photo_filename ."?id=" . $photo_id . " ' title='$photo_caption'/></div>
          </li>

li 元素中还有很多其他元素可以正常工作,例如标题、价格、摘要等....但我无法在这里完成 3 件事:

  1. 显示所有图像(我只显示一个,如果切换器工作的话就没问题了)。
  2. 制作一个切换器以显示具有相同 category_id 的下一张图片。
  3. 可选(图片 slider )

更新

这是一种工作,但我得到了各种重复的条目!似乎对于每张照片,我都会在列表中获得 1 个条目。因此,如果有 4 张图片,则有 4 个条目,如果有 2 张,则只有 2 个条目。 函数 showShort() {

$houses = @mysql_query('SELECT houses.*, gallery_photos.* 
                FROM houses LEFT JOIN gallery_photos 
                ON houses.id = gallery_photos.photo_category');
if (!$houses) {
    die('<p> Error retrieving Propertys from database!<br />' . 'Error: ' . mysql_error() . '</p>');
}

while ($house = mysql_fetch_array($houses)) {
    $id = $house['id'];
    $title = htmlspecialchars($house['title']);
    $ref = $house['ref'];
    $summary = htmlspecialchars($house['summary']);
//        $content = $house['content'];
    $price = $house['price'];
    $houseorder = $house['houseorder'];
    $pool = $house['pool'];
    $bedrooms = $house['bedrooms'];
    $bathrooms = $house['bathrooms'];
    $aircon = $house['aircon'];
    $basement = $house['basement'];
    $location = $house['location'];
    $floorm = $house['floorm'];
    $aream = $house['aream'];
    $garage = $house['garage'];
    $furbished = $house['furbished'];

    $images_dir = "houses";
    $photo_caption = $house['photo_caption'];
    $photo_filename = $house['photo_filename'];
    $photo_category = $house['photo_category'];
    $photo_id = $house['photo_id'];

    if ($garage == 'Yes') {
        ($garage = "Garage : Yes<br>");
    } elseif ($garage == 'No') {
        ($garage = "");
    }
    if ($pool == 'Yes') {
        ($pool = "Swimming Pool : Yes<br>");
    } elseif ($pool == 'No') {
        ($pool = "");
    }
    if ($aircon == 'Yes') {
        ($aircon = "Air Condition : Yes<br>");
    } elseif ($aircon == 'No') {
        ($aircon = "");
    }
    if ($basement == 'Yes') {
        ($basement = "Basement : Yes<br>");
    } elseif ($basement == 'No') {
        ($basement = "");
    }
    if ($furbished == 'Yes') {
        ($furbished = "Furbished : Yes<br>");
    } elseif ($furbished == 'No') {
        ($furbished = "");
    }

    echo "
    <li>

<div id='summarybox'>
    <div id='titlestyle'> $title </div><br>
 <div id='imagebox'>   </div>
    <div id='refstyle'> Ref. $ref </div>

<div id='details1'> 
    Bedrooms : $bedrooms <br>
    Bathrooms: $bathrooms <br>
    Living Area : $floorm m² <br>
    Plot Area : $aream m² <br>
    Location : $location <br>        

</div>

<div id='details2'>

    $pool
    $aircon 
    $basement 
    $furbished 
    $garage       </div>

<section class='ac-container'>
<div>
    <input id='$id' name='accordion-1' type='checkbox' />
    <label for='$id' >Read More</label>
    <article class='ac-small'>


      <div id='summarystyle'> $summary </div>
      <div id='price'>Price : $price </div><br>

 <div id='imagizer' align='center'>
 <ul id='$id'>
<li><a href='" . $images_dir . "/" . $photo_filename . "' rel='lightbox[$photo_category]' title='$photo_caption'><img src='" . $images_dir . "/" .  $photo_filename . "' height='50%' with='50%'/></a></li>
 </ul>


    </article>
 </div>
 </selection>
        <br>
     <div id='admbuttons'><a href='editProperty.php?id=$id' ><button>Edit</button></a>
    <a href='deleteProperty.php?id=$id' onclick='return confirm()'>    <button>Delete</button></a></div>

</div>

                        </li>";
}
}

最佳答案

这是我使用这个想法的实例,只需打开下面的链接并单击缩略图,然后滑入灯箱即可。

用 firebug 检查图像并查看图像下方的 anchor 标记,您将了解我想说的逻辑,然后您可以将其管理到您的代码中

http://dev.tasolglobal.com/osclass/

关于PHP MySQL 数据库图像切换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20046282/

相关文章:

mysql - 数据库设计(自定义属性取决于另一个属性)- MySQL 或其他

php - Nginx + PHP-FPM 502 错误网关

php - 如何使用 php 显示来自 mysql DB 的图像?

php - 如何在foreach循环内求和计数查询?

php - Laravel Echo 在 Laravel 8-vujs "^2.5.17"版本中未接收 Pusher 事件

jquery - 展开 Owl Carousel 内的项目

php - 使用 Laravel 5.3 将值输入数据库

mysql - django扩展查询条件 `COLLATION`

javascript - 当图像完全加载时,我如何在我的 javascript 中启动一个函数

javascript - jQuery 重复数组循环以更改标签属性