AIR CODE:
for(var j:int=0;j"e ContenedorListaArchivos.numChildren;j++)
{
var M:MovieClip = MovieClip(ContenedorListaArchivos.getChildAt(j));
if(M.UploadedFile.Estado==1)
{
var file:File = File.desktopDirectory.resolvePath(M.FullPath);
file.addEventListener(ProgressEvent.PROGRESS,M.ProgresoUpload);
file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,M.CompleteUpload);
file.upload(new URLRequest(_phpscript+"?Opcion=UploadFile&destination="+_destination));
}
}
PHP代码:
<?php
tempFile = $_FILES['Filedata']['tmp_name'];
$fileName = $_FILES['Filedata']['name'];
$fileSize = $_FILES['Filedata']['size'];
$dir = ($_GET['destination']) ? $_GET['destination'] : 'images';
if (!file_exists($dir)) mkdir($dir, 0777);
$isMove =move_uploaded_file($tempFile, $dir .'/'. $fileName);
if($isMove)
echo "OK";
else
echo "NO";
?>
当我上传一个文件时,PHP返回OK。 但是,当上传多个文件时,只有第一个副本为“OK”,另一个副本返回“NO”。
为什么呢?代码有什么问题? 我应该在PHP.ini文件中更改什么?
谢谢你,最好的问候。
答案 0 :(得分:0)
<form action="file-upload.php" method="post" enctype="multipart/form-data">
Send these files:<br />
<input name="userfile[]" type="file" /><br />
<input name="userfile[]" type="file" /><br />
<input type="submit" value="Send files" />
</form>
提交上述表单时,将初始化数组$ _FILES ['userfile'],$ _FILES ['userfile'] ['name']和$ _FILES ['userfile'] ['size'](以及4.1.0之前的PHP版本的$ HTTP_POST_FILES)。当register_globals打开时,也会初始化上传文件的全局变量。其中每个都是数字索引的数组,包含提交文件的适当值。
例如,假设提交了文件名/home/test/review.html和/home/test/xwp.out。在这种情况下,$ _FILES ['userfile'] ['name'] [0]将包含值review.html,$ _FILES ['userfile'] ['name'] [1]将包含值xwp.out 。同样,$ _FILES ['userfile'] ['size'] [0]将包含review.html的文件大小,依此类推。
$ _ FILES ['userfile'] ['name'] [0],$ _FILES ['userfile'] ['tmp_name'] [0],$ _FILES ['userfile'] ['size'] [0] ,并且还设置了$ _FILES ['userfile'] ['type'] [0]。
如果您是首发
<?php
function reArrayFiles(&$file_post) {
$file_ary = array();
$file_count = count($file_post['name']);
$file_keys = array_keys($file_post);
for ($i=0; $i<$file_count; $i++) {
foreach ($file_keys as $key) {
$file_ary[$i][$key] = $file_post[$key][$i];
}
}
return $file_ary;
}
if ($_FILES['upload']) {
$file_ary = reArrayFiles($_FILES['userfile']);
foreach ($file_ary as $file) {
print 'File Name: ' . $file['name'];
print 'File Type: ' . $file['type'];
print 'File Size: ' . $file['size'];
}
}
?>