这是PHP代码。我基本上要做的是从mySQL数据库中显示一个图像,但对于我的生活,我似乎无法弄明白。
<?php
$port = "****";
$server = "****".$port;
$dbname ="****";
$user = "****";
$conn = mysql_connect ("$server", "$user", "$pass") or die ("Connection
Error or Bad Port");
mysql_select_db($dbname) or die("Missing Database");
?>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
/>
<title>Query 3</title>
</head>
<body bgcolor="white">
<hr>
<?php
$speakerPic = $_POST['speakerPic'];
$query = "SELECT speaker.speaker_picture FROM Speaker JOIN Contact USING(contact_id)
WHERE Contact.lname = ";
$query = $query."'".$speakerPic."';";
?>
<p>
The query:
<p>
<?php
print $query;
?>
<hr>
<p>
Result of query:
</p>
<?php
$row = mysql_fetch_array($query);
$content = $row['image'];
header('Content-type: image/jpg');
echo $content;
?>
</body>
</html>
这里有什么用?我非常感谢你的帮助。
答案 0 :(得分:1)
要在HTML文档中包含图片,请使用<img>
标记,其src
属性包含指向图像的URI。
这可能是一个HTTP URI(它可以命中一个从数据库中获取图像数据并返回它的PHP脚本),它可能是一个DATA URI,图像直接编码到页面中。
处理图像的常用方法是将它们保存在文件系统中,并在数据库中存储URL(或可以构建URL的文件路径)。
你不能只是在你正在尝试的另一个HTTP响应中间吐出HTTP响应。
答案 1 :(得分:0)
在致电mysql_query之前,您需要致电mysql_fetch_array。
$result = mysql_query( $query);
$row = mysql_fetch_array($result);
此外,您应该像这样清理$speakerPic
:
$query = $query."'". mysql_real_escape_string( $speakerPic)."';";
答案 2 :(得分:0)
您没有名为“image”的行,请尝试在查询中重新命名您的行:
SELECT speaker.speaker_picture AS image FROM ...