Loading...
Nicky89 avatar Nicky89 15 Точки

[Technical Issue] PHP Basics - How to Upload Files?

Здравейте,

Гледах много в интернет за варианти в които да си качваш файлове чрез PHP. Всичко изглежда елементарно и лесно, НО:

- имам следната форма: Форма Цък

- имам следния скипт: PHP script

 

Това работи само за картинки засега( не съм пробвал с други файлове), и проблема ми като цъкна Submit, просто ми зависва localhost-a и почва да "мисли" до безкрай.

 

Някой имал ли е подобен случай?

Мерси предварително :)

 

Тагове:
0
PHP Web Development Basics 20/08/2014 21:49:14
Valleri avatar Valleri 304 Точки

Здравей,
пуснал ли си FTP Server, като FileZilla. Това трябва да е причината да зависва.
Иначе освен това кода ти ми дава грешки и тъй като не съм сигурен дали изобщи има грешка в него пробвай да го сложиш в един файл с формата. При мен поне сработи само тогава, а бях сложил правилен action.
Преди да правиш каквото и да е с $_FILES провери дали е "isset", иначе изкарва някакви грозни банери.
Ето едно опростено качване, към което можеш да надградиш проверки за размер и други.
http://pastebin.com/qc3GnZPT

Е
то и един добър тут от 3 части: Video

1
20/08/2014 21:48:09
n.velchev95 avatar n.velchev95 79 Точки

Ето и едно уроче от мен за качване на повече от един файл. 

http://pastebin.com/ceVFS5kJ - Ако нещо не работи пиши. Принципно трябва да е ок.  :) 

1
Nicky89 avatar Nicky89 15 Точки
Ей сега си оправих малко настройките на съръвра + още някои неща и сработи. Благодаря Ви за помоща :)
0
beBoss avatar beBoss 507 Точки

Ще е хубаво да споделиш, кои са тези няколко неща и какво си направил, така ще помогнеш на някой друг, който може да има същият проблем :)

0
n.velchev95 avatar n.velchev95 79 Точки
Предполагам говори за настройките на php_ini файла в който е нужно да променим полетата за upload_max_filesize=2M на примерно 8M, което ще рече ,че ще се допускат само файлове до 8мб всеки. Другата настройка трябва да е post_max_size=8M която по подразбиране поне при мен е 8 и отговаря за максималните мегабайти които могат да се пратят през POST заявка. Има и други настройки и други практики но за сега тези би трябвало да ти отговорят на въпроса защо нещо не работи когато е повечко мегабайти ако ти се е случвало да "крашне". :) Ако бъркам нещо поправете ме. Относно php.ini файла -> той се намира в \xampp\php\php.ini а проекта ви е в \xampp\htdocs\alabala. Още нещо като добавка. Ако искате да видите какви настройки са конфигурирани за вашият сървър може да викнете в празна страница php_info(); функцията и тя ще ви визуализира таблица в по-четим вид в която може да проверите настройките си. :)
0
22/08/2014 12:40:05
ZvetanIG avatar ZvetanIG 907 Точки

Нещата които се променят в php.in са
memory_limit = 99M
max_execution_time = 300
upload_max_filesize = 15M
post_max_size = 20M

Стойностите са примерни. Всеки си ги променя според нуждите.

За да не ти зависва ползвай  сървъра на XAMPP.  Установих, че въпреки горните настройки PHPStorm сървъра зависва при по-големи файлове.

0
n.velchev95 avatar n.velchev95 79 Точки

Аз пак се сетих да допълня нещо. Стойностите могат да бъдат променяни и в run time чрез функцията ini_set();. Използва се при специфични нужди и частни случай. 


http://php.net/manual/en/function.ini-set.php

0
22/08/2014 15:35:28
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.