2016-08-17 56 views
-2

所以我想在后上传图片,并张贴在数据库文件夹中。但是当我使用的move_uploaded_file它不写入到图像文件夹。我已经准备好了,但仍然无法正常工作。任何帮助将非常感谢。写文件使用move_uploaded_file

<?php 
 

 
if (isset($_POST['create_post'])) { 
 
    $post_title = $_POST['title']; 
 
\t $post_author = $_POST['authror']; 
 
\t $post_category_id= $_POST['post_category_id']; 
 
\t $post_status = $_POST['post_status']; 
 
\t $post_image = $_FILES['image']['name']; 
 
\t $post_image_temp = $_FILES['image']['temp_name']; 
 
\t $post_tags= $_POST['post_tags']; 
 
\t $post_content = $_POST['post_content']; 
 
\t $post_date = date('d-m-y'); 
 
\t $post_comment_count = 4; 
 

 
\t move_uploaded_file($post_image_temp, "../images/$post_image"); 
 
} 
 
?> 
 

 
<form action = "" method="post" enctype="multipart/form-data"> 
 
\t <div class="form-group"> 
 
\t \t <label for="title"> Title</label> 
 
\t \t <input type="text" class="form-control" name="title"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="Category"> Category</label> 
 
\t \t <input type="text" class="form-control" name="category"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="Author"> Author</label> 
 
\t \t <input type="text" class="form-control" name="author"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="post-status"> Status</label> 
 
\t \t <input type="text" class="form-control" name="post_status"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="post_image"> Image</label> 
 
\t \t <input type="file" name="image"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="post_tags"> Tags</label> 
 
\t \t <input type="text" class="form-control" name="post_tags"> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <label for="post_content"> Content</label> 
 
\t \t <textarea type="text" class="form-control" name="post_content" id="" cols="30" rows="10"></textarea> 
 
\t </div> 
 

 
\t <div class="form-group"> 
 
\t \t <input class="btn btn-primary" type="submit" name="create_post" value="publish post"> 
 
\t </div> 
 

 
</form>

回答

0

检查

我检查你的代码,唯一的变化是$ post_image_temp = $ _FILES [ '形象'] [ 'temp_name'];到$ post_image_temp = $ _FILES [ '图像'] [ 'tmp_name的值']; 参数名称错误

检查,也许这是唯一的错误,如果同样的错误发生时,发表您的错误,让我知道

<?php 

if(isset($_POST['create_post'])){ 

    $post_title = $_POST['title']; 
    $post_author = $_POST['authror']; 
    $post_category_id= $_POST['post_category_id']; 
    $post_status = $_POST['post_status']; 
    $post_image = $_FILES['image']['name']; 
    $post_image_temp = $_FILES['image']['tmp_name']; // this is change 
    $post_tags= $_POST['post_tags']; 
    $post_content = $_POST['post_content']; 
    $post_date = date('d-m-y'); 
    $post_comment_count = 4; 
    move_uploaded_file($post_image_temp, "../images/$post_image"); 
} 

?> 

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


    <div class="form-group"> 
     <label for="title"> Title</label> 
     <input type="text" class="form-control" name="title"> 
    </div> 

    <div class="form-group"> 
     <label for="Category"> Category</label> 
     <input type="text" class="form-control" name="category"> 
    </div> 

    <div class="form-group"> 
     <label for="Author"> Author</label> 
     <input type="text" class="form-control" name="author"> 
    </div> 

    <div class="form-group"> 
     <label for="post-status"> Status</label> 
     <input type="text" class="form-control" name="post_status"> 
    </div> 

    <div class="form-group"> 
     <label for="post_image"> Image</label> 
     <input type="file" name="image"> 
    </div> 

    <div class="form-group"> 
     <label for="post_tags"> Tags</label> 
     <input type="text" class="form-control" name="post_tags"> 
    </div> 
    <div class="form-group"> 
     <label for="post_content"> Content</label> 
     <textarea type="text" class="form-control" name="post_content" id="" cols="30" rows="10"></textarea> 
    </div> 
    <div class="form-group"> 
     <input class="btn btn-primary" type="submit" name="create_post" value="publish post"> 
    </div> 

</form> 
+0

非常感谢你。 – davidthom42

0
  1. 你只是假设上传永远不会失败。坏的假设
  2. 你只是假设移动话费永远不会失败。错误的假设。

事情不能在动不动。永远不要成功。总是假设失败,检查失败,并将成功视为令人惊喜的事情。

如果有错误处理,你会被告知,你的源文件不存在,这是因为:

$post_image_temp = $_FILES['image']['temp_name']; 
             ^----wrong 

tmp_name

+0

谢谢你们两位。 – davidthom42