PHP:图片无法上传到文件夹

时间:2013-06-14 22:21:22

标签: php html database upload

嘿伙计们,我想我需要一双新的眼睛。我有一个插入脚本,可以将数据和图像的URL一起插入数据库,并将其上传到名为uploads的文件夹中。问题是,当所有信息都进入数据库时​​,图像永远不会上传到文件夹。有谁知道为什么?

<?php
$date=$_POST['date'];
$title=$_POST['title'];
$body=$_POST['body'];
$month=$_POST['month'];
$file = $_FILES['file'];
$name = $file['name'];
$path = "uploads/" . basename($name);

$sql="INSERT INTO content (date, title, body, month, pic_id) VALUES ('$date','$title', '$body', '$month', '" . mysql_real_escape_string($path) . "')";
$result=mysql_query($sql);

if($result && move_uploaded_file($file['tmp_name'], $path) ){
echo 'Query has been inputted into the database';
}

else{
echo 'An error occured';
}
?>

我的HTML看起来像这样:

    <h1>Post A Blog </h1></br>
    <form name="personal_information" method="post" enctype="multipart/form-data" action="insert.php">    
            <label>
                <span>Date:<br></span><input id="date" type="date" name="date" />
            </label><br><br>
            <label>
                <span>Title:<br></span><input id="title" type="text" name="title" />
            </label><br><br>
            <label>
                <span>Body:<br></span><textarea id="body" type="text" name="body"/></textarea>
            </label><br><br>
            <label>
            <span>Month:<br></span><input id="month" type="text" name="month" />
            </label><br><br>
            <br>

Upload file:</br>
<input type="file" name="file" id="fileupload"></br></br>
    <input type="submit" name="submit" value="Submit" id="submit"/>

2 个答案:

答案 0 :(得分:0)

我在手机上,所以不能给你一个例子,但我很确定你必须使用完整路径作为目的地。

尝试__DIR__。 '/'。 $ path或使用document_root

答案 1 :(得分:0)

move_uploaded_file() - 将上传的文件移至新位置。

is_uploaded_file() - 判断文件是否通过HTTP POST上传

这对你有用:

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
   echo "File ". $_FILES['userfile']['name'] ." uploaded successfully.\n";
}

More detail and example