如何将照片上传到我的托管服务器文件夹目录

时间:2015-02-14 21:00:22

标签: php jquery html file-upload image-uploading

您好我试图使用php将照片从我制作的网站上传到网站的托管服务器文件夹目录(/ public_html / upload /)。但该文件夹始终显示为空。我不知道我做错了什么。有人可以帮忙吗?

这是html文件:

 <div id = "forms">
  <form action="add_data.php" method="post" form enctype="multipart/form-data">

   <div id = "info1">
   <p> <h2> Accident Report Form </h2> </p>
   </div>
    <div id = "info2"><p> Please fill in the form below to report an accident </p></div>

      <ol>

       <li> <label for = "name" >  Name: </label> 

          <input "type = "text" name = "name" id = "name"/> </li>

         <li> <label for = "location" > Location of the accident: </label>

          <input "type = "text" name = "location" id = "location" /> </li>

         <li> <label for = "road" > Road Name: </label>

          <input "type = "text" name = "road" id = "road"/> </li>


                 <li> <label for = "image" > Image: </label>

          <input type="file" name="photo"><br> </li>


      </ol>
     <div id = "submit"><button type="submit" >Submit</button> </div><br>    


  </form>


 </div>

而且,这是 add_data.php 文件:

 <?php
$target = "/public_html/upload"; 
 $target = $target . basename( $_FILES['photo']['name']);
 $pic=($_FILES['photo']['name']);
   ?> 

2 个答案:

答案 0 :(得分:1)

改进了工作代码:

<?php
   $target = "/public_html/upload/"; 
   $target = $target .$_FILES['photo']['name'];
   $pic=($_FILES['photo']['tmp_name']);
   move_uploaded_file($pic, $target);
?> 

答案 1 :(得分:1)

我已将您的代码更新为有效。

HTML - 没问题,但可以更好地格式化,尝试使用在线格式化工具 http://jsbeautifier.org/
此外,表单开始标记应如下所示

<form action="add_data.php" method="post" enctype="multipart/form-data">

PHP - 评论中提供的说明

<?php

// Uploaded file will be stored in a temporary location and needs to
// be moved to a destination directory and given the original filename
//-----------------------------------------------------------------

//  prepare target pathname
//
$target = "/public_html/upload";
$targetName = $_FILES['photo']['name'];

// get temp file name
//
$tmp = $_FILES['photo']['tmp_name'];

// use php's move_uploaded_file() function
// to copy temp file to final destination
move_uploaded_file($tmp, $targetDir . $targetName);