我希望用户必须从他/她的C
驱动器上传文件,他们无法从其他驱动器上传文件。
我的上传代码就在这里。
<form action="upload.php" method="post" enctype="multipart/form-data">
File: <input type="file" name="filename" />
<input type="submit" value="Upload" />
</form>
和
$file_name = $_FILES['fupload']['name'];
$file_type = $_FILES['fupload']['type'];
print "Path: ".$_FILES['fupload']['tmp_name']."<br />";
print "Name: $file_name <br />";
print "Size: ".$_FILES['fupload']['size']."<br />";
print "Type: $file_type <br />";
if(copy($_FILES['fupload']['tmp_name'], "$file_name"))
{
print "Upload Success";
}
else
{
print "Error occur";
}
答案 0 :(得分:1)
无法强制用户从特定驱动器上传文件。
从php.net查看此链接:$_FILES
这些都是你能做到的了解上传的文件:
[name] => 400.png // file name
[type] => image/png // file type
[tmp_name] => /tmp/php5Wx0aJ // file temp name
[error] => 0 // file uploading error
[size] => 15726 // file size
对于JavaScript,您可以看到以下问题:Javascript: Listing File and Folder Structure
答案 1 :(得分:0)
如果您可以获取文件的绝对路径,则可以执行您想要的操作。 如果可以获取文件的绝对路径,则可以进行简单的相等测试 如果路径不是“C:\”。
但内置的输入类型文件不会给你任何暗示 这是出于安全目的。
如果您可以制作自己的上传表单,那么您可以使用输入类型文件,但这是不可能的。
答案 2 :(得分:0)
您可以编写/使用在客户端处理上载的Java Applet。在那里,您可以检查实际的文件路径。但是,如果用户只是在上传文件之前将文件复制到C:那对您无济于事。我没有看到尝试这一点的任何意义。
使用HTML / JavaScript / PHP是不可能的。
答案 3 :(得分:0)
This is only possible IE.
<head>
<script type="text/javascript">
function CheckAndSubmit () {
var uploadForm = document.getElementById ("uploadForm");
var uploadFile = document.getElementById ("uploadFile");
var fileinfo = document.getElementById ("fileloc");
if (uploadFile.value.length == 0) {
alert ("Please specify the path to the file to upload!");
return;
}
//alert(document.uploadForm.uploadFile.value);
fileinfo.value=uploadFile.value;
uploadForm.submit ();
}
</script>
</head>
<body>
<?php
//if(isset($_POST['uploadFile']))
print_r($_POST);
?>
<form id="uploadForm" name="uploadForm" method="post" enctype="multipart/form-data" action="">
Select a file: <input type="file" name="uploadFile" id="uploadFile" size="25" />
<input type="hidden" id="fileloc" name="fileloc" value="" />
<br /><br />
<input type="button" value="Upload" onclick="CheckAndSubmit ()"/>
</form>
</body>
如果未显示完整路径&gt;&gt; 1.打开Internet Explorer互联网选项&gt;安全&gt;自定义级别&gt; 2.然后在上传时启用包含本地目录文件路径....
...享受