繁体   English   中英

php mysql:创建图片库

[英]php mysql : creating image gallery

我正在尝试学习php&mysql。 我在图库数据库中有一个名为image的表。 我已在该表中存储了4张图像。 我有这个php脚本,应该从数据库中获取图像。 但是在xampp服务器上尝试此操作时,我从数据库中仅获得一张重复4次的图像。 代码是:

<?php
session_START();
//$id = $_GET['id'];
$id = 1;
while ($id <= 4) {
    $link = mysql_connect("localhost", "root", "#")
    or die("Couldn't connect");
    mysql_select_db("gallery") or die("Couldn't connect");
    $sql = "SELECT img FROM image";
    $result = mysql_query("$sql");
    if ($result != 0) {
        $row = mysql_fetch_assoc($result);
        header("Content-type: image/jpeg");
        echo $row['img'];
        mysql_close($link);
    } else {
        echo("No data");
    }
    $id = $id + 1;
};
?>

如果我的问题得到解决,我将非常感谢您。

您实际上应该重写循环,以仅执行一个查询,然后循环搜索结果,但要使其正常工作,您实际上需要传递要检索的图像的ID。 当前,您只是获取表中的第一个图像,然后运行另一个查询以获取第一个图像,依此类推。

尝试这个:

$sql = "SELECT img FROM image WHERE id = $id";

希望有帮助!

您可以使用以下代码获取所有图像。

<?php
session_START();
//$id = $_GET['id'];

    $link = mysql_connect("localhost", "root", "#") or die("Couldn't connect");
    mysql_select_db("gallery") or die("Couldn't connect");

    $sql = "SELECT img FROM image";
    $result = mysql_query("$sql");
    if (mysql_num_rows($result) > 0) {
        while($row = mysql_fetch_assoc($result)){
            header("Content-type: image/jpeg");
            echo $row['img'];
        }
        mysql_close($link);
    } else {
        echo("No data");
    }
?>

问候,

在数据库首先我建议你不要储存图像数据库,但保存文件名或文件的链接。

在文件夹函数Thumbs(){

 $thumbs_path_from_root = 'images/galleryName/';
 foreach(glob($thumbs_path_from_root.'*.jpg') as $image){
    $id = explode('.', basename($image));
    echo "<div class='ecard_holder'><img src='".$image."' class='ecard_thumb' id='".$id[0]."' /></div>";
 }
}

这将搜索您指定的文件夹并列出您使用此功能的页面中的所有图像

将此函数“ Thumbs()”放入您的html并样式化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM