![](/img/trans.png)
[英]move uploaded image into folder in php(move_uploaded_file() function)
[英]move uploaded file into folder in php
我使用下面的代码将图像更新到表中,它正在更新图像,但是在检索图像时路径正确显示,但图像未显示在页面中。
if(isset($_FILES['file'])){
$errors= array();
$file_name = $_FILES['file']['name'];
$file_size =$_FILES['file']['size'];
$file_tmp =$_FILES['file']['tmp_name'];
$file_type=$_FILES['file']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['file']['name'])));
$expensions= array("jpg","png","gif");
if(in_array($file_ext,$expensions)=== false){
$errors[]="extension not allowed, please choose a JPEG or PNG file.";
}
if($file_size > 2097152){
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true){
move_uploaded_file($file_tmp,"C:\wamp\www\Mr.bazaar\images\ ".$file_name);
echo "Success";
}else{
print_r($errors);
}
}
$a=$_POST['pids'];
echo $a;
$b=$_FILES['file']['name'];
echo $b;
$qry1=mysql_query("update brand set image='$b' where brand='$a'");
if($qry1)
echo "<script>alert('Your image Sucessgully Uploaded.');</script>";
else
echo "<script>alert('try again');</script>";
我使用下面的代码在页面中显示图像,但未在页面中显示
$result = mysql_query("select b_id,brand,image from brand");
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo '<tr>';
echo '<td>';
echo $row['brand'];
echo '</td><td>';
echo '<img height="30" width="60" src=../../images/';
echo $row['image'];
echo '>';
echo '</td>';
}
您上一个代码中没有引用image。 假设循环应如下所示:
while ($row = mysql_fetch_array($result)) {
$product = $row['brand'];
$image = $row['image'];
echo "<option value=\"$product\">$image</option>";
}
我认为有两个错误。
首先在上载目录中检查文件是否实际被上载。 如果文件未上传,则在move_uploaded_file函数中提供上传目录的相对路径,即路径应类似于“ ../../upload_directory”,而不应类似于“ c:/ somefolder /”或“ http://example.com” / abs “。
第二个错误是在您的图像源声明中
src=../../images/'; echo $row['image']; echo '>';
在这里,您缺少src后的双引号,即(“”)。 应该像
src="../../images/'; echo $row['image']; echo '">';
请注意,第一行的=后面和尖括号>之前的双引号(“)。
希望在更正上述两个错误之后,您的代码可以正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.