MySQL数据库存储图片url和php页面显示吗?

MySQL数据库存储图片url和php页面显示吗?,php,html,mysql,image,Php,Html,Mysql,Image,我想知道是否有任何方法可以将图像URL存储在具有唯一数字id的数据库中,php页面通过从数据库获取数据(图像URL)并在image.php页面上显示给用户来显示图像 这方面的一个例子是: -具有图像URL(此URL将与id 10一起存储在数据库中) -拥有一个image.php页面,该页面从数据库检索图像URL,并在同一页面(image.php页面)上显示图像(并且不重定向到图像URL)-示例结果为image.php?id=10,其中image.php文件将从图像id为10的数据库中获取图像UR

我想知道是否有任何方法可以将图像URL存储在具有唯一数字id的数据库中,php页面通过从数据库获取数据(图像URL)并在image.php页面上显示给用户来显示图像

这方面的一个例子是: -具有图像URL(此URL将与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,但URL是)

有没有办法做到这一点? 我不熟悉php和MySQL,所以代码不是很好-尝试实验:)

提前谢谢

编辑: 我想人们会被我糟糕的描述弄糊涂(对不起)。 我注意到在你的回答中,你已经在你的代码中包含了实际的图像URL——我不明白为什么

我希望这项工作的示例:

我的桌子上会有以下特征: img_id img_网址

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。

您可以尝试以下方法:

//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);

我想你需要的是:

$image\u路径=”http://example.com/image10.jpg";'
'mysql_查询(“插入到表值(''.$image_路径)”)

在php中,有以下内容:

$id=$\u GET['id'];如果(isset($_GET['id']){'
“$result=mysql_query(“从表中选择路径,其中id=$id”);”
“$row=mysql_fetch_row($result);”

“$path=$row[0];echo”Image number“$id.”是“;}

这一切都取决于您的代码组织,让我解释一下我自己,现在在我的脑海中,我可以想到两种组织方式:

首先,使用包含所有图像的文件夹,每个图像的名称+编号相同;例如:images/img1.jpg-images/img2.jpg-images/img3.jpg等

使用此方法,您甚至不必使用数据库,只需在页面中使用此代码,例如页面

然后使用user3410107给出的方法

$img = "http://example.com/img$id.jpg"; // Image path
$getInfo = getimagesize($img);
header('Content-type: ' . $getInfo['mime']);
readfile($img);
第二种方法实际上是使用数据库,在这种情况下,db中应该至少有2列,一个唯一的ID+图像路径,在这种情况下,您将选择:

$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);

你能给我们一些你尝试过的代码吗?这看起来不错,但我被你的答案弄糊涂了-我希望php代码从数据库中获取图像URL,然后根据其ID显示图像-例如Image10.jpg在数据库中有一个唯一的数字ID-这是10。因此我希望image.php通过首先获取t来显示图像他使用id(比如:image.php?id=10)并使用图像url来显示图像-图像url将位于同一行(或者是同一记录的一部分)作为id为“10”的记录。我不清楚您的评论。请以更简单的方式解释,这样我可能可以帮助您。谢谢您的回答。我对此感到困惑-如果php文件必须从数据库获取图像url,为什么图像url会出现在此php代码中?您说过希望链接如下:。这意味着您希望通过链接发送id。php从带有$_GET['id']的链接中获取id。然后在数据库中搜索具有此id的图像。当找到它时,它将获取路径。如果所有图像都是这样的:image 10 image 11等,则可以使用$path=';$path.=$\u GET['id'];$path.='.jpg',此代码将生成.with”=“连接字符串。Mysql注入在这里很容易,也可以使用mysqli_*函数。mysqli_*被标记为已弃用请使用mysqli_*函数,mysqli_*被标记为已弃用Hanks!”!第二种方法是我想要的方法!
$id = (isset($_GET["id"]))? $_GET["id"] : NULL; //Get the ID
$id = mysql_real_escape_string($id);