我正在尝试从我的SQL数据库中检索已使用图像路径保存的图像。图像保存在服务器上。当我检索图像时,不会返回任何内容。
if(isset($_GET))
{
include_once "mysql_connect.php";
$text = $_GET['text'];
if($text=="")
{
$query = mysql_query("SELECT `URL` FROM `gallery` WHERE `img_text` LIKE '1'")
or die(mysql_error());
while( $rows=mysql_fetch_array($query) )
{
$search[] = $rows[0];
}
$result = array();
$result["result"] = 500;
$result["message"] = "Database Read Successfully";
$result["rows"] = $search;
echo json_encode($result);
exit;
代码的示例是在没有用户输入值的情况下进行搜索。在SQL语句中,“URL”是存储图像路径的字段。图像路径值是完整的URL http://example.com/images/test.jpg并存储为VARCHAR(200)。任何建议将不胜感激
答案 0 :(得分:0)
您的代码不适用。您没有关闭if
声明。
此外,当$text
不为空时,您对数据库没有任何查询......
您需要以下内容:
if($text==""){
$query = mysql_query("SELECT `URL` FROM `gallery` WHERE `img_text` LIKE '1'")
or die(mysql_error());
}
//when $text is not empty...
else{
$query = mysql_query("SELECT `URL` FROM `gallery` WHERE `img_text` LIKE '".$text."'")
or die(mysql_error());
}
while( $rows=mysql_fetch_array($query)){
$search[] = $rows[0];
}
顺便说一下,尝试使用PDO而不是mysql_query
,最后一个是过时的,容易受到SQL注入的攻击。</ p>
答案 1 :(得分:0)
图像在服务器中,因此路径仅在那里工作。
如果您这样做:
echo json_encode($result);
我猜您要将此信息返回给客户端,如果您想显示它们,那么图片路径没有任何价值!
如果您想向用户显示图片,则需要使用HTML img
标记,并使用 FROM THE SERVER 路径填充src属性。