当我使用HTML时,这个<input type="file">代码是有效的,但是当我在最底层使用jQuery文件上传脚本时,就不起作用了。
getcwd();,我相信我使用的是正确的路径还有一件事情也不起作用,我想说的是,文件名旁边的“上传和取消”按钮并没有全部显示,尽管点击它们看起来确实有效。
Echo‘’ing $_POST在提交时没有向我展示任何东西,但我认为这是一个javascript的东西;不确定,因为我是一个初学者(3个月)。
PHP页面
$filename = $_FILES['userfile']['name'];
$tmpname = $_FILES['userfile']['tmpname'];
$filesize = $_FILES['userfile']['size'];
$filetype = $_FILES['userfile']['type'];
$fp = fopen($tmpname, 'r');
$content = fread($fp, filesize($tmpname));
$content = addslashes($content);
fclose($fp);
if(!get_magic_quotes_gpc()) {
$filename = addslashes($filename);
}
$filename = preg_replace('/[ ]/', '~', $filename);
$document_folder = $_SESSION['users_id'];
$destfile = "../_documents/".$document_folder."/".$_FILES['userfile']['name'];
move_uploaded_file( $_FILES['userfile']['tmpname'], $destfile );HTML页面
<link type="text/css" rel="Stylesheet" href="../jqx.base.css" />
<script type="text/javascript" src="../scripts/js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxfileupload.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#jqxFileUpload').jqxFileUpload({ width: 300, uploadUrl: 'doc_upload_jquery.php', fileInputName: 'userfile', autoUpload: true });
});
$('#jqxFileUpload').on('uploadStart', function (event) {
var fileName = event.args.file;
$('#log').prepend('Started uploading: <strong>' + fileName + '</strong><br />');
});
$('#jqxFileUpload').on('remove', function (event) {
var fileName = event.args.file;
$('#log').prepend('Removed file: <strong>' + fileName + '</strong><br />');
});
$('#jqxFileUpload').on('uploadEnd', function (event) {
var args = event.args;
var fileName = args.file;
var serverResponce = args.response;
});
</script>
</head>
<body>
<div id="jqxFileUpload">
</div>
<div id="log" style="margin-top: 20px;"></div>
<br />
</body>
</html>发布于 2015-11-20 17:08:19
姆帕罗-
由于顶部的if语句,您可能没有得到任何错误或输出:
if (isset($_POST['submit']) && $_FILES['userfile']) {尝试将其放在顶部以输出所有post变量,以便确定实际发送了哪些post变量(如果有的话):
print_r($_POST);我以前做过文件上传,但没有使用这个特定的库-我猜它只是发送多部件数据而不是POST变量。查看浏览器开发工具中的预览头,还可以了解所发送的数据。
https://stackoverflow.com/questions/33832002
复制相似问题