我写了以下代码。 Web浏览器中没有写入任何内容,也不会引发任何错误。谁能帮助我找出问题所在?
try {
echo file_get_contents($_FILES["image"]["tmp_name"]);
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "\n";
}
以下是表格:
echo "<form action='upload.php' method='post' enctype='multipart/form-data'>
<p><input type='file' name='myfile'/></p>
<p><input type='submit' value='Upload'/></p>
</form>";
问题是我正在按照我应该设置的教程:$ image = file_get_contents($ _ FILES [“image”] [“tmp_name”]);当教程中的人试图回应它时,文件内容是在浏览器中写入的。我什么都没发生。我认为它不起作用。
答案 0 :(得分:5)
使用强>
file_get_contents($_FILES["myfile"]["tmp_name"]);
而不是
file_get_contents($_FILES["image"]["tmp_name"]);
<强> since <input type='file' name='myfile'/>
强>
Changing the file name of a tmp file uploaded through a form
更好的参考if($_SERVER['REQUEST_METHOD']=='POST' && isset($username) && is_numeric($id)
&& isset($_FILES['myfile']['error']) && $_FILES['myfile']['error']=='UPLOAD_ERR_OK')
{
$name = basename($_FILES['myfile']['name']);
$ext = end(explode('.', $name));
$info = getimagesize($_FILES['myfile']['tmp_name']);
}