[英]retriving image from from database through mysqli using php is not working
我正在尝试从php中的mysql上传和检索图像。 当我尝试检索图像时,上传部分工作正常,这给了我错误。 我尝试了不同的逻辑,但我认为我没有写一个:(。connection.php
<?php
$servername = "localhost";
$username = "root";
$pass = "";
$dbname = "hightech";
// Create connection
$conn = new mysqli($servername, $username, $pass, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
上传
//file upload start
$file_result="";
if ($_FILES["add_img"]["error"]>0){
$file_result .= "No File uploaded or invalid File";
$file_result .="Error Code: " . $_FILES["sound_input"]["error"] ."<br>";
}
else {
move_uploaded_file($_FILES["add_img"]["tmp_name"],
"C:/wamp/www/hightech/images/uploads/"
. $_FILES["add_img"]["name"]);
$file_result .= "File upload Successful!" ;
}
echo $file_result;
//file upload end
将文件名保存在数据库中的其他数据
$sql = "INSERT INTO desktop(type,name,company,item_img,price,point1,point2,point3,point4,point5)
VALUES ('$type','$itemname','$comp','$img','$price','$point1','$point2','$point3','$point4','$point5')";
$run= $conn->query($sql);
从数据库中检索图像和其他数据。
<?php
$sql1="SELECTname,price,point1,point2,point3,
point4,point5,item_img
FROM desktop WHERE company = 'Alienware' ";
$sel_query1= mysqli_query($conn, $sql1);
if($sel_query1 == FALSE) {
die(mysqli_error()); // TODO: better error handling
}
while ($row = mysqli_fetch_array($sel_query1)) {
echo'<div>'.
'<img src="C:/wamp/www/hightech/images/uploads/'.row['item_img']. '"/>'.
'<span>'.
'<ul>'.
'<li id="item_name" style="color:red">'.$row['name'].'</li>'.
'<li>'.$row['point1'].'</li>'.
'<li>'.$row['point2'].'</li>'.
'<li>'.$row['point3'].'</li>'.
'<li>'.$row['point4'].'</li>'.
'<li>'.$row['point5'].'</li>'.
'<ol style="color:red;padding-left:1;font-size:18">'.$row['price'].'</ol>'.
'<ol style="padding-left:110"> <a>'.'<img src="http://localhost/hightech/images/add.png" />'. '</a></ol>
</ul>
</span>
</div>';
}
?>
错误:解析错误:语法错误,意外的'[',期望','或';' 在第85行的C:\\ wamp \\ www \\ hightech \\ admin \\ admin_desktop.php中
85行是
<img src="C:/wamp/www/hightech/images/uploads/'.row['item_img']. '"/>
您只需尝试以下代码。
<?php
$sql1="SELECT fields_you want FROM `tablename` WHERE YOUR_CONDITION ";
$sel_query1= mysqli_query($conn, $sql1);
if($sel_query1 == FALSE)
{
die(mysqli_error()); // TODO: better error handling
}
while ($row = mysqli_fetch_array($sel_query1))
{
echo'<div>'.
'<img src="images/uploads/'.$row['IMAGE_FIEDL_NAME']."/>'.'</div>';
}
?>
您只需要忽略整个路径即可。如果“ images”和“ uploads”文件夹位于项目的同一目录中,则只需提供路径详细信息即可,例如“ images / uploads” 。 您也可以在上传过程中使用此文件夹结构。 够了 它将显示您的图像。我尝试过。 您尝试让我知道。
在$ sql1,您错过了空格SELECT名称。 也许这是您的错误,因为我们不知道您的错误...
而且您错过了。$ row ['item_img']
编辑。 括号后的同一行上还有一个空格。
我不确定,但是回声部分的末尾是否没有缺少一些点?
在SQL语句中使用点前单引号,例如“'.. $ type。”'',如果问题出在sql上,它将解决您的问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.