将上传的文件移到php中的文件夹中

时间:2014-09-29 05:31:46

标签: php mysql

我使用下面的代码将图像更新到表格中,它正在更新图像,但是在重新搜索图像时路径正确显示,但图像没有显示在页面中。请用上面的方式来理解我

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>';


                } 

2 个答案:

答案 0 :(得分:0)

上一段代码中没有对图片的引用。假设,循环应如下所示:

while ($row = mysql_fetch_array($result)) {
  $product = $row['brand'];
  $image = $row['image'];
  echo "<option value=\"$product\">$image</option>";
}

答案 1 :(得分:0)

在我看来,有两个错误。

  1. 如果实际上传文件,请首先检查上传目录。 如果没有上传文件 然后在move_uploaded_file函数中提供上传目录的相对路径即路径应该看起来像“../../ upload_directory”而不是像“c:/ somefolder /”那样“http://example.com/abs”。

  2. 第二个错误出现在您的图片来源声明中

    src=../../images/'; echo $row['image']; echo '>';

    这里你缺少双引号,即src之后的(“”)。它应该像

    src="../../images/'; echo $row['image']; echo '">';

  3. 请注意在最后一行中第一行=和尖括号&gt;之前的双引号(“)。

    希望在纠正上述两个错误后,您的代码应该可以正常工作。