Monday, 15 March 2010

php - Invalid argument supplied for foreach() in multiple images uploading -



php - Invalid argument supplied for foreach() in multiple images uploading -

i trying upload multiple image files , rename them user supplied name. after receiving post parameters(like filename, department_id etc.).

but next code gives me warning "warning: invalid argument supplied foreach() in line 11", foreach() containing line. possible error source ? help appreciated!

<?php include_once './classes/functions.php'; if (isset($_post['sendfiles'])) { $filename = $_post['filename']; $department_id = $_post['department_id']; $reg_no = $_post['reg_no']; $fiscal_year = $_post['fiscal_year']; $tags = $_post['tags']; $filename_array = ""; $new_file_id = get_new_id('files'); foreach ($_files['photos']['name'] $name => $value) { $filename = stripslashes($_files['photos']['name'][$name]); //get extension of file in lower case format $extension = getextension($filename); $extension = strtolower($extension); // echo "\n extension: ", $extension; if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif")) { header("location:../add_new_file.php?msg=error_file_type"); // $errors = 1; } else { $size = filesize($_files['photos']['tmp_name'][$name]); if ($size > 5000 * 1024) { header("location:../add_new_file.php?msg=error_file_size"); // $errors = 1; } $image_name = $filename . '.' . $extension; $newname = 'department_' . $department_id . '/' . $new_file_id . '_' . $image_name; // $new_file_id++; $filename_array += $newname . ','; $copied = copy($_files['photos']['tmp_name'][$name], $newname); if (!$copied) { header('location: ../add_new_file.php?msg=error_upload_file'); } } } // if (add_new_file($filename, $department_id, $reg_no, $fiscal_year, $tags, $filename_array) == true) { // homecoming true; // } // homecoming false; } ?>

line no. 1 returns false.

if upload multiple files - $_files['photos']['name'] array of multiple names.

you can seek this:

echo '<pre>';echo print_r($_files['photos']['name']);echo '</pre>';exit();

i had code similar yours. worked when using little size files, failed big ones. next error displayed:

invalid argument supplied foreach() in multiple images uploading

php image file-upload foreach

No comments:

Post a Comment