目前我正在努力使用uploadify。我已经按照文档进行了操作,但是对于我的生活,我无法将文件上传到该文件夹。
我在OSX上使用MAMP。上传时我可以看到上传栏,在Chrome控制台上没有错误。 tmp文件夹是777。
视图/ upload.php的
<!DOCTYPE html>
<html lang="en">
<head>
<link href="<?php echo base_url() ?>assets/uploadify/uploadify.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo base_url() ?>assets/uploadify/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="<?php echo base_url() ?>assets/uploadify/jquery.uploadify.v2.1.4.min.js"></script>
<script type="text/javascript" src="<?php echo base_url() ?>assets/uploadify/swfobject.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '<?php echo base_url() ?>assets/uploadify/uploadify.swf',
'script' : '<?php echo base_url() ?>assets/uploadify/uploadify.php',
'cancelImg' : '<?php echo base_url() ?>assets/uploadify/cancel.png',
'auto' : true
});
});
</script>
</head>
<body>
<input id="file_upload" name="file_upload" type="file">
</body>
</html>
upload.php的
<?php
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = '/Applications/MAMP/htdocs/tmp';
$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];
move_uploaded_file($tempFile,$targetFile);
echo str_replace($_SERVER['DOCUMENT_ROOT'],'',$targetFile);
}
答案 0 :(得分:1)
您可能需要向$ targetPath添加/
:
$targetPath = '/Applications/MAMP/htdocs/tmp/';
通常,调试此内容的一种方法是在表单中创建普通文件上载。这样,您可以在上传脚本中测试输出并查看它们。一旦一切都在服务器端工作,切换回在客户端使用SWFUpload。