Здравсвуйте! У меня возникла проблема с загрузкой аудио файлов! Написаный скрипт не загружает аудио и видео файлы... хотя изображения и другие файлы загружает замечательно! вот форма: HTML: <FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD=POST> <TABLE align="center" width="100%"> <TR> <TD>Файл:</TD> <TD><INPUT NAME="myfile" TYPE="file" style = "width:100%"></TD> </TR> <TR> <TD>Название:</TD> <TD><INPUT NAME="filename" TYPE="text" style = "width:100%"></TD> </TR> <TR> <TD>Альбом:</TD> <TD> <select NAME="album" TYPE="select" style = "width:100%"> <?php require_once("../../connect_db.php"); $res = mysql_query("Select id, name From albums Order By id ASC;"); while($album = mysql_fetch_array($res)) { print "<option value = '".$album[0]."'>".urldecode($album['1'])."</option>"; } ?> </select> </TD> </TR> <TR> <TD colspan="2"><INPUT TYPE="submit" VALUE="Загрузить"></TD> </TR> </TABLE> а вот и сам код загрузки: PHP: <?php // проверяем заполенность формы $_FILES["myfile"] - путь к файлу, $_POST['filename'] - текст, $_POST['album'] - текст if(isset($_FILES["myfile"], $_POST['filename'], $_POST['album'])) { // получаем информацию о файле $myfile = $_FILES["myfile"]["tmp_name"]; $myfile_name = $_FILES["myfile"]["name"]; $myfile_size = $_FILES["myfile"]["size"]; $myfile_type = $_FILES["myfile"]["type"]; $error_flag = $_FILES["myfile"]["error"]; // если нет ошибки загружаем файл в указаную директорию if($error_flag == 0) { $fp = fopen($myfile,"r"); $content = fread($fp, filesize($myfile)); fclose($fp); move_uploaded_file($myfile,"../../data/music/$myfile_name"); } // записываем информацию о файле в БД $res = mysql_query("Select max(id) From music"); $id = mysql_fetch_array($res); if($id[0] == NULL) { $id = 0; } else { $id = $id[0]+1; } $name = urlencode($_POST['filename']); $file_name = urlencode($_FILES["myfile"]["name"]); $album_id = $_POST["album"]; mysql_query("Insert into music values($id, '$name', '$file_name', '$album_id');") or die("Insert Error:".mysql_error()); // освобождаем память mysql_close($cn); unset($_FILES["myfile"], $myfile, $error_flag); // переводим на другую страницу header("location:show_music.php"); } else print "ERROR"; при попытке загрузить аудио или видео файл выдает ошибку: Notice: Undefined index: myfile in C:\wamp\www\avramets.com.ua\admin\music\upload.php on line 4 Помогите пожалуйста справится с этой бедой!
Проблема в будет загружено при условии если 3 файла как я понял одновременно загружатюся. мб просто записать соре сам новенький буду помогать чем могу)
Дело в том, что при загрузке изображения либо друго (pdf, doc...) файла ошибки нет! и загружается все замечательно! а как только загружаю аудио-видео, сразу же выдает ошибку! Вот это: PHP: if($_FILES["myfile"] != "" && $_POST['filename'] != "" && $_POST['album'] != "") я поменял на это: PHP: isset($_FILES["myfile"], $_POST['filename'], $_POST['album']) ошибка пропала, но загрзку не произходит... дальше условия не идет...
ну это понятно! оно так и есть: PHP: if(isset($_FILES["myfile"], $_POST['filename'], $_POST['album'])) { ... } else print "ERROR"; теперь просто пишет "ERROR". все поля заполняю правильно, а вот до зугрузки не доходит...
т.к я нуб задаю сразу нубо вопрос, разве можно так перечислять? && и || или сужествует вроде) мб } else { print "ERROR"; } ?) ну мб и значения не имеет) забей я тоже нуб тоже разбираюсь пока что во всем
Напиши в скрипте где-нить вначале: PHP: <?php echo('POST: ' . ini_get('post_max_size') . ', File: ' . ini_get('upload_max_filesize'); И сравни с размером загружаемого файла.
Вот то что выдало означает, что максимальный размер для POST-запроса 8 Мб, а максимальный размер загружаемого файла не должен превышать 2 Мб. Так настроен php на твоём сервере. Надо либо редактировать php.ini, либо использовать .htaccess . Можно попробовать воспользоваться ini_set(), но сомневаюсь, что это поможет.
сам нашел: ;;;;;;;;;;;;;;;;; ; Data Handling ; ;;;;;;;;;;;;;;;;; ; Maximum size of POST data that PHP will accept. ; http://php.net/post-max-size post_max_size = 256M ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; ; Whether to allow HTTP file uploads. ; http://php.net/file-uploads file_uploads = On ; Temporary directory for HTTP uploaded files (will use system default if not ; specified). ; http://php.net/upload-tmp-dir upload_tmp_dir = "c:/wamp/tmp" ; Maximum allowed size for uploaded files. ; http://php.net/upload-max-filesize upload_max_filesize = 256M