【发布时间】:2011-05-03 13:05:46
【问题描述】:
我尝试阅读多个教程、PHP 文档,但不知道自己在做什么。
这是我的表格
<form action="beta_upload.php" enctype="multipart/form-data" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="20971520" /><!-- 20 Meg -->
<input type="file" name="file[]" />
<input type="file" name="file[]" />
<input type="file" name="file[]" />
<input type="submit" value="submit" name="submit" />
</form>
现在当我把它发送到这里时:
<?php
$username = trim($_POST['username']);
$password = trim($_POST['password']);
$name = trim($_POST['name']);
$email = trim($_POST['email']);
$username = preg_replace('/[^(\x20-\x7F)]*/','', $username);
$password = preg_replace('/[^(\x20-\x7F)]*/','', $password);
$name = preg_replace('/[^(\x20-\x7F)]*/','', $name);
$email = preg_replace('/[^(\x20-\x7F)]*/','', $email);
$upload_dir = '/beta_images/';
print_r($_FILES);
foreach ($_FILES['files']['error'] as $key => $error) {
if($error == UPLOAD_ERR_OK) {
$check_name = $_FILES['files']['name'];
$filetype = checkfiletype($check_name, 'jpg,jpeg');
$temp_name = $_FILES['files']['tmp_name'][$key];
$image_name = 'image_' . $name . '1';
move_uploaded_file($tmp_name, $upload_dir . $image_name);
}
}
它带回来了
Warning: Invalid argument supplied for foreach() in /blabla on line 18
我不太了解 foreachs,当我 print_r 数组时,它对我一点帮助都没有。
有人能帮帮我吗?
谢谢。
【问题讨论】:
-
$_FILES['files']必须是$_FILES['file'] -
@pekka 是的 - 或者
<input type="file" name="file[]" />需要是<input type="file" name="files[]" />