我只希望用户选择一个文件,它会自动将其下载到我的服务器。我不需要更多的功能。最简单、最可靠(也许你用过它?)的插件是什么?尝试过https://github.com/valums/file-uploader ,但无法让它工作。
最佳答案
来自网页,例如:upload.html
<html>
<head>
<script type="text/javascript">
function uploadFile(){
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var formElement = document.getElementById("upload");
var formData= new FormData(formElement);
xmlhttp.open("post","upload.php",false);
xmlhttp.send(formData);
var counter = 0;
while (xmlhttp.readyState != 4){
counter = counter + 1;
}
var errorCondition = xmlhttp.responseText;
if(errorCondition == "success"){
alert("File uploaded successfully");
}
else{
alert("Error: "+errorCondition);
}
}
</script>
</head>
<body>
<form id="upload" action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="button" name="submit" value="Submit" onclick="uploadFile();" />
</form>
</body>
</html>
调用 php,如下所示:upload..php
<?php
if ($_FILES["file"]["error"] > 0)
{
echo ($_FILES["file"]["error"]);
}
else
{
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "success";
}
}
?>
关于php - 最简单的 ajax (jQuery) 版本,仅上传一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8454707/