fentg.com

ФОРУМЪТ на ФЕНОВЕТЕ на НТГ
Дата и час: Пет Май 14, 2021 2:15 pm

Часовете са според зоната UTC + 2 часа [ DST ]


Правила на форума


Натиснете за да видите правилата



Напиши нова тема Отговори на тема  [ 8 мнения ] 
Автор Съобщение
 Заглавие: PHP upload
МнениеПубликувано на: Чет Апр 16, 2009 3:33 pm 
Offline

Регистриран на: Пон Фев 09, 2009 10:35 am
Мнения: 8
Здравейте всички,
Понеже разработвам в момента едно сайтче за правене на календари т.е потребителя се регистрира и сам си прави календар по някакъв интерактивен шаблон. Като казвам интерактивен имам предвид че разните работи по него могат да се местят и да се ресайзват от потребителя. Всичко хубаво ама стигнах до момента в който трябва да се уплоудват снимки. Аз използвам php скрипт за това обаче проблема е че може да се качват само файлове до 2 МБ. Дали има начин да кажем на сървара или на php да разрешава и по-големи файлове?


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Чет Апр 16, 2009 6:43 pm 
Offline
Администратор
Аватар

Регистриран на: Нед Ное 02, 2008 5:30 pm
Мнения: 3550
Кода на формата за качване:
Код:
<form method="post" action="pickup.php" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="50000">
<h3>Избиране на снимковия файл:</h3>
<input type="file" name="file" size="40">
<br><br>
<input type="submit" value="КАЧИ"><br>
</form>
Обърни внимание на полето от тип "скрит", в който се указва на глобалната променлива MAX_FILE_SIZE размера - в байтове - в случая 50000 байта...
А това е страницата за осъществяване на самото качване - pickup.php, като скрипта е "вътрешен"...
Линка "#" (на 2 места) си го насочи към формовата страница за връщане евентуално...
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>КАЧЕНА ЛИ Е КАРТИНКАТА</title>
</head>
<body>
<div>
<?php
if ($_FILES['file']['name']!="")
{
   copy($_FILES['file']['tmp_name'],"../pics/".$_FILES['file']['name']);
   echo"Ако се вижда тук снимката Ви,<br>Значи е качена /преди или сега - няма значение/...<br>";
   echo'<a href="#"><img src="../pics/'.$_FILES['file']['name'].'"></a><br>';
   echo" Щракнете върху нея за да се върнете...";
}
else
echo'<a href="#">Нямате избран файл! Щракнете тук за връщане във формата...</a>';
?>
</div>
</body>
</html>
Има и още един начин - в php.ini има ред за указване на размера на файловете за качване, но според мен това чрез формата е по-ефективно, защото важи конкретно за самата форма и е с точност до байт, докато в php.ini е по-глобалистично и мисля, че работеше по наедро - примерно в мегабайти...

Много ми се иска да пробваш и да ми кажеш "вървежно" ли е моето предложение... Има си неща за тунинговане (изфинване) - като "../pics/" и други... Разгледай внимателно и ми кажи дали те устройва... БТВ - това качва всякакви файлове, не само снимкови...

Успех!

И айде - кога ще се видим? Върви ли AS? Щото аз се позафених по всякакви други програмни алтернативи - (JS+PHP==Ajax) ... True или False е този израз?

_________________
Изображение


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Чет Апр 16, 2009 11:00 pm 
Offline

Регистриран на: Пон Фев 09, 2009 10:35 am
Мнения: 8
Емо, мерси много за кода.
Аз малко се притеснявам да задавам така въпроси защото не сам много активен във форума ама ...
За пореден път се убеждавам че разцъкване му е майката. Установих че MAX_FILE_SIZE колкото и да го направя ако сървъра ми е настроен (има една директива в php.ini нарича се upload_max_filesize и по подразбиране е равна на 2М) не може да стане. Т.е това е глобално и се чудя ако си кача сайта на някой сървър на дали някой ще ми позволи да пипам по php.ini
Друг вариант е да използвам функцията
Код:
ini_set('upload_max_filesize', '5M')

но тя не действа щото може да се изпълнява само от определени папки.

значи кода ще работи само ако директивата е равна на повече от това което сме сложили да е равно MAX_FILE_SIZE в формата. При мен формата за upload ми е в флаш филмче и там не мога да задам стойност на MAX_FILE_SIZE.

Ето какво промених по скрипта за upload:
-проверка за съществуване на папка
-коректно показване на снимката (беше забравил width и height)

Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>КАЧЕНА ЛИ Е КАРТИНКАТА</title>
</head>
<body>
<div>
<?php

if(!is_dir("./pics")) mkdir("./pics", 0755);

if ($_FILES['file']['name']!="")
{
    $target = "./pics/";
    $target .= basename( $_FILES['file']['name']) ;
    $ok=1;
    if(move_uploaded_file($_FILES['file']['tmp_name'], $target))
    {
        list($width,$height) = getimagesize($target);
        chmod($target, 0777);
        echo "The file ". basename( $_FILES['file']['name']). " has been uploaded<br>";
        echo'<a href="#"><img src="' . $target . '" width="'.$width.'" height="'.$height.'"></a><br>';
       
    }
    else {
        echo "Sorry, there was a problem uploading your file.";
    }

}
else
    echo'<a href="#">Нямате избран файл! Щракнете тук за връщане във формата...</a>';
?>
</div>
</body>
</html>


Относно поставения от теб Conditional statement според мен TRUE. Много искам да се науча на Java ама нещо не ми се отдава :waa:
Е те кога ще се видим се нема време да дойда до Пловдив. Ама живи и здрави след някои месец ще сменям работата и дано ми остане 1-2 седмици почивка пак и се задават там от 1 до 6 почивка пак.


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Пет Апр 17, 2009 7:27 am 
Offline
Администратор
Аватар

Регистриран на: Нед Ное 02, 2008 5:30 pm
Мнения: 3550
За width и height на снимките ако не са зададени какво става?

А за директивата в php.ini на размера - действа си на "жив" сървър...

А като ти е на флаш - скритото поле за размера пак може да се опиташ да го пробуташ...

Проби - и така...

Ако нямаш място за "жив" хостинг - мога да ти дам във photo-cl.com - поддомейн - примерно lecsos.photo-cl.com

Пиши...

_________________
Изображение


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Пет Апр 17, 2009 8:24 am 
Offline

Регистриран на: Пон Фев 09, 2009 10:35 am
Мнения: 8
Ами аз го пробвах на Mozilla и ако няма зададени размери просто отказва да го покаже изписва го като счупен линк (бая време се чудех защо не показва снимката) и след като добавих това за размерите и почна да ги показва.

Ами това за поддомейна в photo-cl.com е добра идея само ако ти се занимава с мен щото досега не съм качвал скриптове на жив сървър и не съм сигурен как се правят настройки на конфигурационните файлове. Т.е да го ползвам за разработка, която досега правя само на моя лаптоп с WAMP...

БТВ като каза photo-cl.com и се сетих че имам идея за дизайна на заглавната страница ако все още е на дневен ред че не съм се виждал даже с членовете :rolleys: .


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Пет Апр 17, 2009 5:39 pm 
Offline
Администратор
Аватар

Регистриран на: Нед Ное 02, 2008 5:30 pm
Мнения: 3550
Ми дай някой лейаут за нея да видим...

А по празниците ще ти отворя един поддомейн...

_________________
Изображение


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Пет Апр 17, 2009 7:46 pm 
Offline

Регистриран на: Пон Фев 09, 2009 10:35 am
Мнения: 8
Относно лейаут съм дал на сайта photo-cl.com в ДИЗАЙН можеш да хвърлиш едно око ако искаш.

За поддомейна не се притеснявай когато можеш само ми пусни mail. И да си починеш по празниците нали знаеш те са за "отпускане" ;)


Върнете се в началото
 Профил  
 
 Заглавие: Re: PHP upload
МнениеПубликувано на: Съб Апр 18, 2009 9:09 am 
Offline
Администратор
Аватар

Регистриран на: Нед Ное 02, 2008 5:30 pm
Мнения: 3550
Код:
post_max_size = 32M
upload_max_filesize = 32M
Това е от един php.ini...

А относно lecsos.photo-cl.com съм ти пратил ЛС... Успех...

Виж как снимката на http://lecsos.photo-cl.com е без width и height?

Поне на моята мозила и ИЕ си работи?

Какъв беше проблемът по-горе? Къде съм сбъркал?

_________________
Изображение


Върнете се в началото
 Профил  
 
Покажи мненията от миналия:  Сортирай по  
Напиши нова тема Отговори на тема  [ 8 мнения ] 

Часовете са според зоната UTC + 2 часа [ DST ]


Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Превод: Ioan Filipov