|
|
|
|
|
для: sim5
(18.11.2008 в 11:57)
| | Спасибо, сейчас попробую. | |
|
|
|
|
|
|
|
для: kis-kis
(18.11.2008 в 11:47)
| | Ну если вам это так нужно, то в разделе HTML+JS есть примеры вывода картинок. Разница для вас будет лишь в том, что вы будете путь к картинке указывать локалного компьютера, полученный от атрибута value элемента file, а не сетевой. Сами примеры есть в указанном разделе, смотрите.
Собственно самый простой пример, это сделать видимым, после выбора пользователем изображения, например, элемент DIV с необходимым позиционированием относительно поля формы, в котором прописан элемент IMG, src которому вы и указываете тот, что получите у поля file. Размеры изображения укзывать в процентах, в сторону уменьшения, вот вам и предпросмотр. | |
|
|
|
|
|
|
|
для: sim5
(18.11.2008 в 11:03)
| | Отсюда - хотите чтобы картиночку показывало рядом с полем выбора, значит используйте JS. На время "работы" страницы на стороне пользователя, он будет видеть картиночку выбранного файла.
Не поможете реализовать? :) | |
|
|
|
|
|
|
|
для: sim5
(18.11.2008 в 11:03)
| | - | |
|
|
|
|
|
|
|
для: kis-kis
(18.11.2008 в 10:51)
| | Чего смотреть? Суть проста. Если вы, например, загрузите изображение от пользователя себе на сервер только в том случае, пока он не представиться в текстовом поле как "Петя", то проверяя это текстовое поле, вы будете знать "Петя" он или нет. И пока нет, возвращаете ему назад форму, пусть вводит "Петя". Как только вы получили необходимое, проверяете параметры присланного файла ($_FILES). Если загрузка файла прошла без ошибок ($_FILES['fielname']['error'] - не содержит ошибок), проверяете условия на загрузку файлов. Если условия не удовлетворяют вашим, возвращаете форму пользователю с полем имени уже заполненным ранее пользователем (Петя). И так, пока у кого нервы крепче - у Пети или у вашего скрипта :)
Как только все если в норме, вот тут и копируйте функцией move_uploaded_file() файл из временной папки в папку назначения.
А если вы не хотите постоянной перезагрузки страницы при ошибках ввода (но только текстовых полей, списков, радиокнопок, чекбоксов и т.п.), то используйте Ajax - вам уже приводили пример этого.
PS. Атрибут value поля элемента file формы только для чтения! А это значит, что вы не сможете указать ему значение, например, путь к файлу на локальной машине, которое вы можете получить от пользователя при отправке формы. Другими словами, при ошибках загрузки изображения, этот путь можете выбросить в помойку - присвоить его форме уже нельзя. Пользователь обязан выбрать файл вновь. Отсюда - хотите чтобы картиночку показывало рядом с полем выбора, значит используйте JS. На время "работы" страницы на стороне пользователя, он будет видеть картиночку выбранного файла. | |
|
|
|
|
|
|
|
для: sim5
(18.11.2008 в 10:41)
| | Да, с регистрацией, я Вам в пм отправил данные, чтобы Вы посмотрели. | |
|
|
|
|
|
|
|
для: kis-kis
(18.11.2008 в 10:38)
| | Какое фото и о какой загрузке речь, если это страница с регистрацией? | |
|
|
|
|
|
|
|
для: sim5
(18.11.2008 в 10:09)
| | Мы никак не можем понять друг друга. На счет copy() понял, вот пример, что я хочу получить.
_http://www.e1.ru/auto/sale/manage.php
Посмотрите, плиз, так станет понятно. Просто загрузите, одно фото не заполняя ниодного поля. Заранее спасибо. | |
|
|
|
|
|
|
|
для: kis-kis
(18.11.2008 в 10:02)
| | Пороверку ввода текстовых полей, выбор селекта и т.п.., это уже Ajax, если не хотите перезагрузки. А остальное выбросить, еще раз вернуться к мануалу, прочитать, и уяcнить, что не стоит для загрузки файлов на сервер использовать функцию copy(), для этого существует функция move_uploaded_file() !
Если нет ошибок при загрузке файла на сервер (в частности получем его размер и другое), то ни к чему проверять на "пустоту" временное имя файла. | |
|
|
|
|
 2.2 Кб |
|
|
для: sim5
(18.11.2008 в 09:21)
| | Хорошо, посмотрите, плиз, вложенный файл.
Если Вы загрузите картинку, и не заполните текстовое поле, то потом вам будет нужно снова их загружать. Разве я не прав? (хотя в приведенном мной примере они загружаются в любом случае, даже если текст. поле не заполнено).
Тогда вопрос, а как сделать, рядом с полем file - маленькое превью из файлов с названием s_?
Можно конечно сделать так
<input type=\"hidden\" name=\"p1\" value=\"".$_FILES["photo_1"]['name']."\">
|
И путь к картинке тогда будет выглядеть так - <img src=\"s_".$_POST['p1']."\">
Но если трижды отправить форму с незаполненным текст. полем, то картинка теряется. Можно ли это исправить?
Спасибо. | |
|
|
|
|