我创建了一个简单的php页面来上传一个文件,但是它不起作用。我的留言没问题,但如果我输入"prova“文件夹,什么都没有.文件夹设置为777,下面是代码
<html>
<head>
...
</head>
<body>
<form action="importazione.php?a=1" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="Aggiorna" value="Submit">
</form>
<?php
$messaggio= $_GET['a'];
define("UPLOAD_DIR", "/home/me/Scrivania/prova");
if ($messaggio == 1)
{
$allowedExts = array("txt");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ( $temp[1] == "txt") {
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else {
if(isset($_FILES['file']))
{
$file = $_FILES['file'];
if($file['error'] == UPLOAD_ERR_OK and is_uploaded_file($file['tmp_name']))
{
move_uploaded_file($file['tmp_name'], UPLOAD_DIR.$file['name']);
echo "OK";
}
}
}
}
else {
echo "Invalid file";
}
}
?>
</body>
发布于 2014-05-10 12:46:14
改变这一点:
define("UPLOAD_DIR", "/home/me/Scrivania/prova");对此:
define("UPLOAD_DIR", "/home/me/Scrivania/prova/");在我的服务器上测试了您的脚本,运行良好,只需要在末尾添加一个额外的斜杠,因为将文件上传到的url转换为:
/home/me/Scrivania/provafile.txt
当它应该是
/home/me/Scrivania/prova/file.txt
-编辑--
另外,如果您打算使用ext数组,请将if语句更改为:
if ( in_array($temp[1], $allowedExts) ) {发布于 2014-05-10 12:41:58
改变这个
move_uploaded_file($file['tmp_name'], UPLOAD_DIR.$file['name']);到这个
move_uploaded_file($_FILES['file']['tmp_name'], UPLOAD_DIR.'/'.$_FILES['file']['name']);https://stackoverflow.com/questions/23581142
复制相似问题