使用move_uploaded_files上传文件流

时间:2013-08-20 06:40:51

标签: php

我一直在尝试使用以下代码上传文件流,

<form enctype="multipart/form-data" action="carousel_update.php?id=<?php echo $id;?>" method="post">
for($j = 1 ; $j <= $n ; $j++)   {
        echo "<option value='$j'>$j</option>";
    }
    echo "</td></tr>
    <tr><td>Title:</td><td><input type=\"text\" name=\"title[$i]\"></td></tr>
    <tr><td>Image: </td><td><input type=\"file\" name=\"picture$i\"></td></tr>
    <tr><td>Description:</td><td><textarea name=\"description[$i]\"></textarea></td></tr>
    <tr><td>Link Text: </td><td><input type=\"text\" name=\"link_text[$i]\"></td></tr>
    <tr><td>Link URL: </td><td><input type=\"text\" name=\"link_url[$i]\"></td></tr>
    <tr><td>Link Target: </td><td><input type=\"text\" name=\"link_target[$i]\"></td></tr></table></fieldset>";
        }
    }
?>
<input type="submit" value="Submit">

在动作文件carousel_update.php中,

for($i = 1; $i<=$n ; $i++)  {
    $file = "picture".$i;
    $order = $_POST['order'][$i];
    $title = $_POST['title'][$i];
    $description = $_POST['description'][$i];
    $linktext = $_POST['link_text'][$i];
    $linkurl = $_POST['link_url'][$i];
    $linktarget = $_POST['link_target'][$i];
    $target = dirname(__FILE__). "/images/".$_FILES[$file]["name"];
    if(move_uploaded_file($_FILES[$file]["tmp_name"], $target)) {
        echo "Uploaded";
    }
    else    {
        echo "Problems in uploading file";
    }
}

如果我必须上传3个文件,我可以上传一些图像,但其他图像显示错误。我检查了服务器日志,然后说:

[Tue Aug 20 12:00:35 2013] [error] [client 127.0.0.1] PHP Notice:  Undefined index: picture2 in /var/www/akai/carousel_update.php on line 19, referer: http://127.0.0.1/akai/update_carousel.php?id=1
[Tue Aug 20 12:00:35 2013] [error] [client 127.0.0.1] PHP Notice:  Undefined index: picture2 in /var/www/akai/carousel_update.php on line 21, referer: http://127.0.0.1/akai/update_carousel.php?id=1
[Tue Aug 20 12:00:35 2013] [error] [client 127.0.0.1] PHP Notice:  Undefined index: picture3 in /var/www/akai/carousel_update.php on line 19, referer: http://127.0.0.1/akai/update_carousel.php?id=1
[Tue Aug 20 12:00:35 2013] [error] [client 127.0.0.1] PHP Notice:  Undefined index: picture3 in /var/www/akai/carousel_update.php on line 21, referer: http://127.0.0.1/akai/update_carousel.php?id=1

我不知道mu代码中的错误是什么。提前致谢。

1 个答案:

答案 0 :(得分:1)

您的表单中根本没有图片2和3,或者它们没有正确传递给php脚本。

嗯,你没有说明你在什么情况下实现这个,但为什么不在页面上使用三个或更多输入文件字段呢?