走投无路啦,关于表单的两步提交传递数组的问题
本帖最后由 kiseki_m 于 2012-11-09 16:11:45 编辑
小弟做了一个图片上传功能,首页面通过checkbox可以选择多个用户,选择后点击上传进入第二个上传页面,可以批量给多个用户目录上传图片,但现在问题出现了,第一个页面通过checkbox传递的用户ID 数组到了第二个上传图片的页面,一开始还是存在的,但点击“上传”按钮后,也就是提交第二个页面后,则会提示foreach错误,也就是说这个数组就不存在了……用session好像也不获取不到……球大家帮帮忙……
第二个页面,关键页面代码:
<?php<br /> session_start();<br /> require_once('pic_fns.php');<br /> include("upload.class.php");<br /> <br /> <br /> $edit_me = $_POST['edit_me']; //checkbox选中的数据储存在 edit_me数组中<br /> $valid_user = $_SESSION['valid_user']; //检测是否登录<br /> <br /> do_html_header("上传图片广告 Upload pic for machine"); <br /> try{<br /> check_valid_user(); //检测是否登录<br /> }catch(Exception $e){<br /> echo $e->getMessage();<br /> do_html_url('login_admin.php','返回');<br /> do_html_footer();<br /> exit;<br /> }<br /> <br /> foreach ($edit_me as $k){ //循环上传图片,提交后显示WARNING foreach的数据为空<br /> <br /> if($_POST['submit']){ //图片上传部分<br /> $image = new upload_image();<br /> $image->get_file_dir("pic/".$k."/"); //文件存放目录<br /> $image->get_upload_name($_FILES['file']['name']);<br /> $image->get_upload_size($_FILES['file']['size']);<br /> $image->get_upload_type($_FILES['file']['type']);<br /> $image->get_upload_tamp($_FILES['file']['tmp_name']);<br /> <br /> $image->upload();<br /> display_user_menu();<br /> do_html_footer;<br /> }<br /> }<br /> <br /> ?><br /> <form action="" method="post" enctype="multipart/form-data"><br /> <table align="center"><br /> 图片来源:<input type="file" name="file"><br /> <input type="hidden" name="hidden" value="a"><br /> <input type="submit" name="submit" value="上传"><br /> </table><br /> </form><br /><br /> <br /> <?php<br /> <br /> display_user_menu(); <br /> do_html_footer;<br /> <br /> ?>