Как се прави ограничение за файл дали е избран във формата?

morkov4o

Registered
Здравейте ! Имам форма:

<input type="file" name="file" style="border:1px solid #E5E5E5; background-color:#EEEEEE; height:21px;"> <input name="Send" type="submit" value="Качи" style="border:1px solid #E5E5E5; background-color:#EEEEEE; height:21px;\">

и искам да огранича ако не е избран файл да прекъсва скрипта ...

($file == "")) {
echo "Не сте въвели име на картинката!";
}
else{

но така не става ... казаха ми ,че е заради: type="file" от формата...

ако имате идея казвайте ! Благодаря предварително!
 

Dido_net

Registered
($file == "")) {
echo "Не сте въвели име на картинката!";
}
else{

това ли ти е пхп скрипта? :shock:
 

index

Super Moderator
Код:
if (empty ($file))
{echo 'neste vuveli fail';}
else {echo 'O.K.';}
Mисля ,че така ще стане
 

Slavei

Registered
index каза:
Код:
if (empty ($file))
{echo 'neste vuveli fail';}
else {echo 'O.K.';}
Mисля ,че така ще стане

ще стане.
Но трябва да се знае, че при върната грешка от сървъра, в масива ще има един елемент error, следователно няма да е празен и проверката няма да сработи.
 

bafitu

Registered
Slavei,
правилно масива НИКОГА няма да е празен най-малкото това error дето го връща е достатъчно.
Затова може да използваш точно него .. примерно:
if($_FILES['file']['error'] == 4){
echo 'ne ste izbrali fail'; exit;}

ако не е избран файл в масива с индекс error ще върне грешка номер 4.
Можеш да видиш всички грешки които връща тука :
http://bg2.php.net/manual/en/features.file-upload.errors.php

п.п. давам ти пример просто...
може да направиш и така:
if(empty($_FILES['file']['name'])){ echo ' ne ste izbrali fail';exit;}

и така..
избери си..
 

Slavei

Registered
bafitu каза:
Slavei,
правилно масива НИКОГА няма да е празен най-малкото това error дето го връща е достатъчно.
Затова може да използваш точно него .. примерно:
if($_FILES['file']['error'] == 4){
echo 'ne ste izbrali fail'; exit;}

ако не е избран файл в масива с индекс error ще върне грешка номер 4.
Можеш да видиш всички грешки които връща тука :
http://bg2.php.net/manual/en/features.file-upload.errors.php

п.п. давам ти пример просто...
може да направиш и така:
if(empty($_FILES['file']['name'])){ echo ' ne ste izbrali fail';exit;}

и така..
избери си..

Това ми беше мисълта, но съм уморен и не ми се пишеше подробно. Просто му казвам да знае, че това не е най-доброто решение, пък той ако има желание, щеше да потърси допълнително инфо
 

sizif

Registered
bafitu, една молба: защо не напишеш един урок за ъплоуд на файлове? Не конкретен скрипт, а урок, който да разглежда функциите и да обяснява детайлите.
Знам, че си доста напред с това, не съм забравил кода за ъплоуд, който ми преправи :)

А иначе, Slavei,
тръгнах да умувам върху забележката ти, но добре, че bafitu ме изпревари, защото големи глупости щях да сътворя. :)
 

bafitu

Registered
//офф
хаха аз прочетох едни глупости ама ги изтри нали :)
Може и да напиша нещо просто обяснения кое за какво е..
Понеже хората ги мързи да потърсят в мануала... :)
Обаче незнам кога ще е най-вероятно след няколко дена сега съм зает.
//ендофф
 

sizif

Registered
bafitu каза:
Понеже хората ги мързи да потърсят в мануала... :)

Понякога не е въпрос на мързел, а на "обективна невъзможност" :) Аз поне ен знам англ. и когато кода към обясненията е тврде абстрактен, както в случая, обикновено не схващам :(

Може и да напиша нещо просто обяснения кое за какво е..

Блгаодаря! Вярвам, че ще има любопитни :)

А за глупостите ми - видял си ги само ти :D
 

Admin

Registered
bafitu каза:
//офф
хаха аз прочетох едни глупости ама ги изтри нали :)
Може и да напиша нещо просто обяснения кое за какво е..
Понеже хората ги мързи да потърсят в мануала... :)
Обаче незнам кога ще е най-вероятно след няколко дена сега съм зает.
//ендофф


/офф
Бафи...
Искам някой някога някъде да каже:
Може и да напиша нещо просто обяснения кое за какво е..
Понеже хората ги мързи да потърсят в web-tourist ..

Схващаш ми мисълта? :)

//офф
 

Slavei

Registered
sizif каза:
bafitu каза:
Понеже хората ги мързи да потърсят в мануала... :)

Понякога не е въпрос на мързел, а на "обективна невъзможност" :) Аз поне ен знам англ. и когато кода към обясненията е тврде абстрактен, както в случая, обикновено не схващам :(

Може и да напиша нещо просто обяснения кое за какво е..

Блгаодаря! Вярвам, че ще има любопитни :)

А за глупостите ми - видял си ги само ти :D

//off брей изпуснах купона :(

sizif, ако още ти се умува - принтирай така масива:
print_r($_FILES['file']);

До колкото помня се оправяш добре с масивите, така, че ще ти се изясни всичко.

пп
само да добавя, че максималната големина на файла, който може да се качи обикновенно е 2 МБ (това е дефолтната стойност)
 

bafitu

Registered
//офф последен
ей разсмяхте ме :)
някой ден ще вземат говорят така знаеш ли..
Ще изместим мануала от 1вата позиция..
Айде стига ,че много спам много нещо :)
//ендофф
 

morkov4o

Registered
еми благодаря на всички ... :shock:
 

Горе