| |
|
|
| | Как узнать был ли файл выбран пользователем? | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 14:22)
| | | $_FILES | |
| |
|
|
| |
|
|
| |
для: garold
(11.06.2010 в 14:43)
| | |
if(empty($_FILES)) echo "Файл не выбран";
|
Так? | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 15:40)
| | | print_r($_FILES);
посомтрите что там. | |
| |
|
|
| |
|
|
| |
для: sl1p
(11.06.2010 в 15:45)
| | | если файл не выбран выводит весь массив $_FILES - Array ( [uf] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )
если выбран выводит пустой массив- Array ( ) | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 15:54)
| | | наверное наоборот :)) | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 14:22)
| | | Вот вам моя версия этого скрипта
<?
if(empty($_FILES['uf']['filename']))
{
$err[] = "Вы не выбрали файл для загрузки!";
}
if (!isset($_POST['folder']))
{
$err[] = "Вы не выбрали папку для сохранения!";
}
if(isset($err))
{
foreach($err as $errors) echo "$errors<br>";
}
?>
|
У меня тут еще кусок от предупреждения на счет папок | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 16:03)
| | | Если в форме folder - не чекбокс и не радиокнопка, то по идее isset будет возвращать всегда true
А вот $err должен быть объявлен еще до всех этих телодвижений, иначе у вас должен вылезать notice при отсутствии ошибок.
<?php
$err = '';
if (empty($_FILES['uf']['filename']))
$err[] = "Вы не выбрали файл для загрузки!";
if (empty($_POST['folder']))
$err[] = "Вы не выбрали папку для сохранения!";
if (!empty($err))
foreach($err as $errors) echo "$errors<br>";
|
| |
| |
|
|
| |
|
|
| |
для: neadekvat
(11.06.2010 в 16:17)
| | | >Если в форме folder - не чекбокс и не радиокнопка, то по идее isset будет возвращать всегда true
>А вот $err должен быть объявлен еще до всех этих телодвижений, иначе у вас должен вылезать notice при отсутствии ошибок.
>
>
<?php
>$err = '';
>if (empty($_FILES['uf']['filename']))
> $err[] = "Вы не выбрали файл для загрузки!";
>
>if (empty($_POST['folder']))
> $err[] = "Вы не выбрали папку для сохранения!";
>
>if (!empty($err))
> foreach($err as $errors) echo "$errors<br>";
>
|
Постояно пишет что не выбран файл | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 17:53)
| | | Смеетесь? Я использовал ваш код, что ж вы его не проверили? :) | |
| |
|
|
| |
|
|
| |
для: neadekvat
(11.06.2010 в 16:17)
| | | не вылезет notice, здесь же происходит проверка на наличие вообще $err=) | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 14:22)
| | | Отправка
<form action='upfile.php' method='POST' enctype='multipart/form-data'>
Выберите файл:<input type='file' name='file'><br>
Выберите папку<br>
<input type='radio' name='folder' value='other'> Разное<br>
<input type='radio' name='folder' value='img'> Картинки<br>
<input type='submit'>
</form>
|
Для справки
Обработчик
<?php
$err = '';
if (empty($_FILES['file']['filename']))
$err[] = "Вы не выбрали файл для загрузки!";
if (empty($_POST['folder']))
$err[] = "Вы не выбрали папку для сохранения!";
if (!empty($err))
foreach($err as $errors) echo "$errors<br>";
?>
|
| |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 17:57)
| | | Выше я написал
"Если в форме folder - не чекбокс и не радиокнопка, то по идее isset будет возвращать всегда true"
У вас как раз таки радиокнопка, и надо проверять isset.. | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 17:57)
| | |
if (empty($_FILES['file']['name']))
|
Посмотрите еще раз на свой массив $_FILES, где вы его выводили. | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 17:57)
| | | Люди, посмотрите и по тестируйте!
<?php
echo $_POST['folder'];
echo "<br>".$_FILES['file']['name'];
?>
|
Попробуйте через мою форму по выбирайте файл и папку.
Файл выбираешь, отправляешь, не чего не выводит.
Когда выбираешь только только папку, выводит все правильно.
Когда выбираешь и файл и папку не чего не выводит! | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(13.06.2010 в 13:02)
| | | сделайте форму, поместите туда <input type=file name=newfile> и <input type=submit>
в php скрипте, к которому ссылается форма напишите print_r($_FILES);
и вы сразу все поймете | |
| |
|
|
| |
|
|
| |
для: NSDaler
(13.06.2010 в 13:11)
| | | не понятно. Когда файл не выбран пишет Array ( [file] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )
Когда выбран пишет Array() | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(13.06.2010 в 13:23)
| | | [error] => 4
прочтите сперва в мануале о загрузке файлов на сервер. | |
| |
|
|
| |
|
|
| |
для: NSDaler
(13.06.2010 в 13:11)
| | | Че, надо проверять? Если массив не пустой то выдаем ошибку? | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(11.06.2010 в 17:57)
| | | Загрузку изображения (пермещения в папку) нужно начинать с проверки отсутствия ошибок при загрузке ($_FILES['file']['error']).
Не выгодно опять грузить файл, если пользователь забыл указать папку.
Сама логика скрипта у вас ни к черту. | |
| |
|
|
| |
|
|
| |
для: sim5
(13.06.2010 в 13:26)
| | | И что вы предлагаете? С начала грузить файл, потом выбирать куда его сохранять? | |
| |
|
|
| |
|
|
| |
для: Гавриленко Дмитрий
(13.06.2010 в 13:31)
| | | Я вам уже предложил - почитать в мануале о загрузке файлов на сервер, вы совершенно не представляете себе этого вопроса.
Что касается перемещения из временной папки в папку назначения, то зачем повторно заставлять пользователя загружать файл, если он успешно загружен? Пусть исправит ошибку - укажет папку, а ранее загруженный файл временно сохранить при этом, и использовать для этого сессию, дабы не создавать мусора, если пользователь покинет сервер. | |
| |
|
|