我想知道是否有任何方法可以将图像URL存储在具有唯一数字ID的数据库中,并且php页面通过从数据库获取数据(图像URL)并将其显示给用户来显示图像image.php页面?
这方面的一个例子是: - 拥有图片网址http://www.example.com/images/image10.jpg(此网址将存储在数据库中,ID为10) - 有一个image.php页面,它从数据库中检索图像URL并在同一页面上显示图像(image.php页面)(并且没有重定向到图像URL) - 示例结果是image.php? id = 10其中image.php文件将从图像ID为10的数据库中获取图像URL(使用我的示例:www.example.com/images/image10.jpg)并显示它(因此它就像查看一样该图像就好像您正在查看www.example.com/images/image10.jpg但该网址将是http://www.example.com/image.php?id=10)
有没有办法做到这一点? 我是php和MySQL的新手,所以对代码不太好 - 尝试实验:)
提前致谢!
编辑: 我认为人们对我的不良描述感到困惑(很遗憾)。 我在你的回答中注意到你在代码中包含了实际的图片网址 - 我不明白为什么会这样做。
我希望如何工作的示例:
我的桌子会有这些场地: img_id img_url
image.php文件将使用image.php url末尾的id从表中获取img_url。例如: - image.php?id = 10 - image.php文件将使用id(即10),并通过从中检索img_url(可能是:www.example.com/images/image10.jpg)来显示图像。表格并显示它 - 图像ID将是表格中的img_id。 - image.php?id = 12 - image.php文件将使用id(即12)并通过从中检索img_url(可能是:www.example.com/images/image12.jpg)来显示图像。表并显示它 - 图像ID将在表格中为img_id。
答案 0 :(得分:1)
你可以试试这个:
//File: image.php?id=10
//you query
$img = 'http://example.com/sample.jpg'; // Image path from database
$getInfo = getimagesize($img);
header('Content-type: ' . $getInfo['mime']);
readfile($img);
答案 1 :(得分:0)
我认为你需要的是:
$image_path="http://example.com/image10.jpg";'
'mysql_query("INSERT INTO table VALUES ('',$image_path)");
有这个:
$id=$_GET['id'];if (isset($_GET['id'])){'
'$result = mysql_query("SELECT path FROM table WHERE id=$id");'
'$row = mysql_fetch_row($result);'
'$path=$row[0];echo "Image number ".$id." is <img src='".$path."'>';}
答案 2 :(得分:0)
这一切都取决于你的代码组织,让我解释一下我自己,现在在我的脑海里,我可以想到两种组织方式:
首先,使用包含所有图像的文件夹,每个图像具有相同的名称+编号;例如:images / img1.jpg - images / img2.jpg - images / img3.jpg等
使用此方法,您不必使用偶数数据库,只需在您的页面中使用此代码,例如页面http://exemple.com/images.php?id=10
$id = (isset($_GET["id"]))? $_GET["id"] : NULL; //Get the ID
然后使用user3410107
给出的方法$img = "http://example.com/img$id.jpg"; // Image path
$getInfo = getimagesize($img);
header('Content-type: ' . $getInfo['mime']);
readfile($img);
第二种方法确实是使用数据库,在这种情况下,db中应该至少有2列,一个唯一的ID + Images路径,在这种情况下你会选择:
$query = mysql_query("SELECT id, imagePath FROM table WHERE id = $id");
while($data = mysql_fetch_assoc($query)){
$img = $data["imagePath"];
}
获得图像路径后,进行与以前相同的过程:
$getInfo = getimagesize($img);
header('Content-type: ' . $getInfo['mime']);
readfile($img);
出于安全考虑,请在$ id变量
之后添加此行$id = (isset($_GET["id"]))? $_GET["id"] : NULL; //Get the ID
$id = mysql_real_escape_string($id);