- Решение за upload
WT форуми -> PHP MySQL ASP.NET -> Решение за upload
Създайте нова тема Напишете отговор 
Автор Съобщение
kini
Нов
Нов

Регистриран на: 01/05/2010 12:36 pm

Support: 2
Bonus: 4
Мнения: 140
Мнение 16/09/2018 4:29 pm     Решение за upload Отговорете с цитат


Здравейте,

Имам нужда от решение свързано със скрипт, за upload на изображения..
Искам да знам, как бих могъл да сложа default изображение, ако не е посочено такова във формата? Idea

Скрипта е следния:


if($_SERVER["REQUEST_METHOD"] == "POST"){
   
   
             $image = $_FILES["file"]["name"];
            $uploadedfile = $_FILES['file']['tmp_name'];
            
            
               if ($image){
                   $filename = stripslashes($_FILES['file']['name']);
    
                    $extension = getExtension($filename);
                   $extension = strtolower($extension);
      
                      if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif")){
                         $change = 'Непозволен формат!';
                         $errors = 1;
                     } else {
                        $size=filesize($_FILES['file']['tmp_name']);
                           
                           if ($size > MAX_FILE_SIZE*1024){
                              $change = 'Снимката е прекалено голяма!';
                              $errors = 1;
                           }


                           if($extension=="jpg" || $extension=="jpeg" ){
                              $uploadedfile = $_FILES['file']['tmp_name'];
                              $src = imagecreatefromjpeg($uploadedfile);

                           } else if($extension=="png"){
                              $uploadedfile = $_FILES['file']['tmp_name'];
                              $src = imagecreatefrompng($uploadedfile);
                           } else {
                              $src = imagecreatefromgif($uploadedfile);
                           }

                        

                        list($width,$height)=getimagesize($uploadedfile);

                        $newwidth=620;
                        $newheight=($height/$width)*$newwidth;
                        $tmp=imagecreatetruecolor($newwidth,$newheight);


                        $newwidth1=180;
                        $newheight1=($height/$width)*$newwidth1;
                        $tmp1=imagecreatetruecolor($newwidth1,$newheight1);

                        $newwidth2=50;
                        $newheight2=($height/$width)*$newwidth2;
                        $tmp2=imagecreatetruecolor($newwidth2,$newheight2);

                        imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
                        imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,$width,$height);
                        imagecopyresampled($tmp2,$src,0,0,0,0,$newwidth2,$newheight2,$width,$height);
                        
                        
                        $n = strtolower($compare['id'])."_".mktime().".".$extension;
                                                
                        $filename = "uploads/".$n;
                        $filename1 = "uploads/small_".$n;
                        $filename2 = "uploads/small_thumb_".$n;

                        imagejpeg($tmp,$filename,100);
                        imagejpeg($tmp1,$filename1,100);
                        imagejpeg($tmp2,$filename2,100);

                        imagedestroy($src);
                        imagedestroy($tmp);
                        imagedestroy($tmp1);
                        imagedestroy($tmp2);
                     }
               }
         }
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 158
Bonus: 315
Мнения: 1472
Мнение 17/09/2018 11:38 am      Отговорете с цитат


Вместо изкуствено да 'качваш' default изображение (то вече си е качено?), по-добре в кода за извеждането на изображението да покажеш това по подразбиране, в случай, че не е качено от потребителя.

Иначе за всеки потребител ще държиш отделно копие на една и съща картинка - няма нужда.

Друг проблем, който ще си решиш по този начин, е че ще можеш лесно да смениш картинката по подразбиране, ако решиш. Иначе на всеки потребител ще трябва по отделно да проверяваш дали не го използва, и да го сменяш ръчно 1 по 1. А и пак няма да знаеш дали потребителят е качил съответното изображение, или му е било зададено като defaultово.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
Страница 1 от 1


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети