Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Usunięcie sekcji upload file

dawidirzyk 19 Lut 2012 12:09 960 0
  • #1 19 Lut 2012 12:09
    dawidirzyk
    Poziom 9  

    Witam :D
    Mam problem otóż jestem posiadaczem skryptu TenTego http://tentego.sruu.pl

    Dokładnie od 2 dni wyszła modyfikacja aby można było dodać własny plakat typu Mem Generator. W pakiecie są różne tła i dodatkowo możemy je sami dodać ale pojawia się problem gdyż:

    *Jest funkcja upload obrazka by zgrać tło+obrazek(uploadowany)+tekst
    - Mi chodzi oto by usunąć funkcję upload obrazka a żeby było tylko dodawanie tła + tekst; zamieszczam skrypt:

    Code:

    <?php
    if ($user->verifyLogin()) {
       if(isset($_POST['submit_obrazek']) and $_GET['co']=='obrazek') {
          if(!$_POST['tytul'] || !$_FILES['obrazek']['name']) {
             echo '<b>Nie wypełniono pola z tytułem lub obrazkiem!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
          }
          else {
             //UPLOAD OBRAZKA
             if(filesize($_FILES['obrazek']['tmp_name']) >= $conf->pobierz('max_file_size')) {
                $data_img = date("YmdHis");
                $sp1 = explode(".",($_FILES['obrazek']['name']));
                $uploaddir = 'img/upload/'.$data_img.'.'.$sp1[1];
                switch(uploadFile('obrazek','img/upload/', 'jpg|gif|png|jpeg|JPEG|GIF|PNG|JPEG', 0, $data_img)) {
                               case 0: echo "Nie wybrano pliku do załadowania!"; break;
                               case 1: echo "Nie udało się zapisać pliku."; break;
                               case 2:
                                  if($sp1[1] != "gif" AND $sp1[1]!= "GIF") {
                                     $image = new SimpleImage();




                                     $image->load($uploaddir);
                                     if($image->getWidth() > 670) {
                                        $image->resizeToWidth(670);
                                        $image->save($uploaddir);
                                     }
                                     else { //jeżeli obrazek jest mniejszy niż limit szerokości to jest kompresowany żeby mniej ważył
                                        $image->resizeToWidth($image->getWidth());
                                        $image->save($uploaddir);
                                     }
                                     
                $tytul=$_POST['tytul'];
                $zrodlo=$_POST['zrodlo'];
                $autor = $user->userInfo("id");
                $data=date('d-m-Y H:i');
                $wykonaj = mysql_query("INSERT INTO `shity` (`title`, `img`, `source`, `author`, `data`, `type`) VALUES ('$tytul', '$uploaddir', '$zrodlo', '$autor', '$data', 'obrazek')");

                                  }
                                  echo "Obiekt został dodany!";
                                  break;
                               case 3: echo "Niedozwolone rozszerzenie pliku!"; break;
                               case 4: echo "Taki plik już istnieje.";
                            }
                      }
             else echo "Plik jest za duży.";
             echo '<br /><a href="forums.html">&laquo; Strona Główna</a>';
          }
       }
    else {
    ?>

    <?php
    if(@$_GET['co']=='obrazek' || !@$_GET['co'])
    {
    ?>
    <div id="tab">
    <ul>
       <li id="selected"><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
       <li><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
       <li><a href="dodaj.php?co=meme"><img src="img/meme.png" style="position:relative;top:3px;"/> Dodaj Mema</a></li>
    </ul>
    </div>
    <div id="tab_linia"></div>
    <form action="dodaj.php?co=obrazek" method="post" enctype="multipart/form-data">
    <table>
                   <colgroup>
                      <col width="120px;">
                      <col>
                   </colgroup>
                   <tbody><tr>
                      <td>Tytuł:</td>
                      <td>
                         <input class="pole" type="text" name="tytul">
                      </td>
                   </tr>
                   <tr>
                      <td>Obrazek:</td>
                      <td>
                         <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $conf->pobierz('max_file_size')*1024; ?>" /> <!--maksymalna wielkość pliku w bajtach-->
                                <input name="obrazek" type="file" /> <span style="color:#595959">(max. <?php echo $conf->pobierz('max_file_size'); ?>KB)</span>
                      </td>
                   </tr>
                   <tr>
                      <td>Źródło:</td>
                      <td><input class="pole" type="tekst" name="zrodlo"></td>
                   </tr>
                   <tr>
                      <td></td>
                      <td>
                         <input type="submit" name="submit_obrazek" class="button" value="Dodaj" />
                      </td>
                   </tr>
                </tbody></table>
                </form>
    <?php
    }
    else
    {
    if(isset($_POST['submit_film']) and $_GET['co']=='film')
    {
    if(!$_POST['tytul_filmu'] || !$_POST['adres_filmu']) {
       echo '<b>Nie wypełniono pola z tytułem lub adresem filmu!</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
       }
       else {
       if (preg_match("(http://)", $_POST['adres_filmu']))
       {
          $tytul=$_POST['tytul_filmu'];
          $adres_filmu=trim($_POST['adres_filmu']);
          $autor = $user->userInfo("id");
          $data=date('d-m-Y H:i');
       
          $zapytanie = "INSERT INTO `shity` (`title`, `img`, `source`, `author`, `data`, `type`) VALUES ('$tytul', '$adres_filmu', 'YouTube', '$autor', '$data', 'film')";
           $wykonaj = mysql_query($zapytanie);
          echo '<b>Filmik został pomyślnie dodany!</b><br/>
          <a href="forums.html">&laquo; Strona Główna</a>';
       } else {
        echo '<b>Link do filmu jest niepoprawny.</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
    }
          }
    }
    else {
    if(@$_GET['co']=='film' || !@$_GET['co']) {
    ?>
    <div id="tab">
    <ul>
       <li><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
       <li id="selected"><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
       <li><a href="dodaj.php?co=meme"><img src="img/meme.png" style="position:relative;top:3px;"/> Dodaj Mema</a></li>
    </ul>
    </div>
    <div id="tab_linia"></div>
    <form action="dodaj.php?co=film" method="post" enctype="multipart/form-data">
    <table>
                   <colgroup>
                      <col width="120px;">
                      <col>
                   </colgroup>
                   <tbody><tr>
                      <td>Tytuł:</td>
                      <td>
                         <input class="pole" type="text" name="tytul_filmu">
                      </td>
                   </tr>
                   <tr>
                      <td>Adres filmu:</td>
                      <td>
                         <input class="pole" type="text" name="adres_filmu">  <span style="color:#595959">np. http://www.youtube.com/watch?v=7BfGua1Hn-8</span>
                      </td>
                   <tr>
                      <td></td>
                      <td>
                         <input type="submit" name="submit_film" class="button" value="Dodaj" />
                      </td>
                   </tr>
                </tbody></table>
                </form>
    <?php
          }
          else
    {
       if(isset($_POST['submit_meme']) and $_GET['co']=='meme') {
          if(!$_POST['gorny_tekst'] || !$_POST['dolny_tekst'] || !$_FILES['obrazek']['name']) {
             echo '<b>Nie wypełniono wszystkich pól!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
          }
          else {
             //UPLOAD OBRAZKA
             if(filesize($_FILES['obrazek']['tmp_name']) >= $conf->pobierz('max_file_size')) {
                $data_img = date("YmdHis");
                $sp1 = explode(".",($_FILES['obrazek']['name']));
                $uploaddir = 'img/upload/'.$data_img.'.'.$sp1[1];
                switch(uploadFile('obrazek','img/upload/', 'jpg|gif|png|jpeg|JPEG|GIF|PNG|JPEG', 0, $data_img)) {
                               case 0: echo "Nie wybrano pliku do załadowania!"; break;
                               case 1: echo "Nie udało się wgrać pliku."; break;
                               case 2:
                                  if($sp1[1] != "gif" AND $sp1[1]!= "GIF") {
                                     $image = new SimpleImage();
                                     $image->load($uploaddir);
                                     if($image->getWidth() > 670) {
                                        $image->resizeToWidth(670);
                                        $image->save($uploaddir);
                                     }

                                  }
                                  
                                  
                                  // Funkcja przezroczystości dla PNG i GIF
                function setTransparency($new_image,$image_source)
                   {
                         $transparencyIndex = imagecolortransparent($image_source);
                         $transparencyColor = array('red' => 255, 'green' => 255, 'blue' => 255);
                         
                         if ($transparencyIndex >= 0) {
                            $transparencyColor    = imagecolorsforindex($image_source, $transparencyIndex);   
                         }
                         
                         $transparencyIndex    = imagecolorallocate($new_image, $transparencyColor['red'], $transparencyColor['green'], $transparencyColor['blue']);
                         imagefill($new_image, 0, 0, $transparencyIndex);
                          imagecolortransparent($new_image, $transparencyIndex);   
                   }

                // Funkcja obramowania
                function imagettfstroketext(&$image, $size, $angle, $x, $y, &$textcolor, &$strokecolor, $fontfile, $text, $px) {
                   $text = strtoupper($text);
                   for($c1 = ($x-abs($px)); $c1 <= ($x+abs($px)); $c1++)
                   for($c2 = ($y-abs($px)); $c2 <= ($y+abs($px)); $c2++)
                   $bg = imagettftext($image, $size, $angle, $c1, $c2, $strokecolor, $fontfile, $text);
                   return imagettftext($image, $size, $angle, $x, $y, $textcolor, $fontfile, $text);
                }

                // Definicje obrazków
                $autor = $user->userInfo("id");
                $data=date('d-m-Y H:i');
                $url['tlo'] = 'img/memy_bg/'.$_POST['kolor_tla'];
                $url['obrazek'] = $uploaddir;
                $tekst_gora = $_POST['gorny_tekst'];
                $tekst_dol = $_POST['dolny_tekst'];
                $font = 'img/impact.ttf';
                $font_size = 30;

                #####################################################

                // Pobranie i nadanie nowych rozmiarów
                list($width, $height) = getimagesize($url['obrazek']);

                //Sprawdzenie czy obrazek nie jest za wielki
                if($width>350 || $height>350) {
                $percent = ($width*$height/122500);
                   if($percent>0.8 && $percent<3) {
                   $newwidth = $width * ($percent/4);
                   $newheight = $height * ($percent/4);
                   }
                   elseif($percent>3 && $percent<5) {
                   $newwidth = $width * ($percent/6);
                   $newheight = $height * ($percent/6);
                   }
                   elseif($percent>5 && $percent<7) {
                   $newwidth = $width * ($percent/9);
                   $newheight = $height * ($percent/9);
                   }
                   elseif($percent>7 && $percent<9) {
                   $newwidth = $width * ($percent/11.5);
                   $newheight = $height * ($percent/11.5);
                   }
                   elseif($percent>10) {
                   $newwidth = $width * ($percent/15);
                   $newheight = $height * ($percent/15);
                   }
                   else {
                   $newwidth = $width * $percent;
                   $newheight = $height * $percent;
                   }
                }
                else {
                   $newwidth = $width;
                   $newheight = $height;
                }
                   
                // Załadowanie nowego obrazka
                $obrazek = imagecreatetruecolor($newwidth, $newheight);
                $source = imagecreatefromstring(file_get_contents($url['obrazek']));
                imagealphablending($obrazek, false);
                imagesavealpha($obrazek, true);

                // Pomniejszenie obrazka
                imagecopyresampled($obrazek, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

                //Załadowanie tła
                $meme = imagecreatefromstring(file_get_contents($url['tlo']));

                $font_width = imagefontwidth($font_size);
                $text1_width = strlen($tekst_gora)*$font_width;
                $text2_width = strlen($tekst_dol)*$font_width;

                // Dodanie tekstu
                $font_color = imagecolorallocate($meme, 255, 255,255);
                $stroke_color = imagecolorallocate($meme, 0, 0, 0);

                imagettfstroketext($meme, $font_size, 0, (400/2)-($text1_width), 50, $font_color, $stroke_color, $font, $tekst_gora, 2);
                imagettfstroketext($meme, $font_size, 0, (400/2)-($text2_width), 370, $font_color, $stroke_color, $font, $tekst_dol, 2);

                //Wyliczenie środka
                $od_lewej = (400/2)-($newwidth/2);
                $od_gory = (400/2)-($newheight/2);

                //Utworzenie obrazka usera
                $new_image = imagecreatetruecolor($newwidth, $newheight);
                setTransparency($new_image, $obrazek);
                imagecopyresampled($new_image, $obrazek, 0, 0, 0, 0, $newwidth, $newheight, $newwidth, $newheight);

                // Scalenie // od lewej, od góry, -, -, szerokość, wysokość, przezroczystość
                imagecopymerge($meme, $new_image, $od_lewej, $od_gory, 0, 0, $newwidth, $newheight, 100);

                // Zapisanie mema do pliku
                imagepng($meme, 'img/upload/'.$data_img.'.png');
                $sciezka_mema = 'img/upload/'.$data_img.'.png';
                                  
                                  echo "Obiekt został dodany!";
                                  break;
                               case 3: echo "Niedozwolone rozszerzenie pliku!"; break;
                               case 4: echo "Taki plik już istnieje.";
                            }
             
                
                $wykonaj = mysql_query("INSERT INTO `shity` (`title`, `img`, `source`, `author`, `data`, `type`) VALUES ('$tekst_gora', '$sciezka_mema', 'MEME', '$autor', '$data', 'obrazek')");
             }
             else echo "Plik jest za duży.";
             echo '<br /><a href="forums.html">&laquo; Strona Główna</a>';
          }
       }
    else {
       function files_list($katalog) {
          global $pliki;
       
          $dir = opendir($katalog);
          while(false !== ($file = readdir($dir))) {
          if ($file != "." && $file != "..") {
             $pliki[] = $file;
          }
          }

       }
    ?>
    <div id="tab">
    <ul>
       <li><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
       <li><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
       <li id="selected"><a href="dodaj.php?co=meme"><img src="img/meme.png" style="position:relative;top:3px;"/> Dodaj Mema</a></li>
    </ul>
    </div>
    <div id="tab_linia"></div>
    <form action="dodaj.php?co=meme" method="post" name="dynamicselector" enctype="multipart/form-data">
    <table>
                   <colgroup>
                      <col width="120px;">
                      <col>
                   </colgroup>
                   <tbody><tr>
                      <td>Górny tekst:</td>
                      <td>
                         <input class="pole" type="text" name="gorny_tekst">
                      </td>
                   </tr>
                   <tr>
                      <td>Obrazek:</td>
                      <td>
                         <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $conf->pobierz('max_file_size')*1024; ?>" /> <!--maksymalna wielkość pliku w bajtach-->
                                <input name="obrazek" type="file" /> <span style="color:#595959">(max. <?php echo $conf->pobierz('max_file_size'); ?>KB)</span>
                      </td>
                   </tr>
                   <tr>
                      <td>Dolny tekst:</td>
                      <td><input class="pole" type="text" name="dolny_tekst"></td>
                   </tr>
                   <tr>
                      <td>Kolor tła:</td>
                      <td><?php
                      echo '<select name="kolor_tla" onChange="generateimage(this.options[this.selectedIndex].value)">';
                      files_list('img/memy_bg');
                      for( $x = 0, $cnt = count($pliki); $x < $cnt; $x++ ) {
                         echo '<option value="'.$pliki[$x].'">'.$pliki[$x].'</option>';
                      }
                      echo '</select>';
                      ?>
                      <ilayer id="dynamic1" width=100% height=178><layer id="dynamic2" width=100% height=178><div id="dynamic3"></div></layer></ilayer>
                      </td>
                   </tr>
                   <tr>
                      <td></td>
                      <td>
                         <input type="submit" name="submit_meme" class="button" value="Dodaj" />
                      </td>
                   </tr>
                </tbody></table>
                </form>
                <script>
    var ie4=document.all
    var ns6=document.getElementById
    var tempobj=document.dynamicselector.kolor_tla
    if (ie4||ns6)
    var contentobj=document.getElementById? document.getElementById("dynamic3"): document.all.dynamic3
    function generateimage(which){
    if (ie4||ns6){
    contentobj.innerHTML='Ładowanie tła...'
    contentobj.innerHTML='<img src="img/memy_bg/'+which+'" width="150px" height="150px" style="border:1px solid white;margin-left:2px;">'
    }
    else if (document.layers){
    document.dynamic1.document.dynamic2.document.write('<img src="img/memy_bg/'+which+'" width="150px" height="150px" style="border:1px solid white;margin-left:2px;">')
    document.dynamic1.document.dynamic2.document.close()
    }
    else
    alert('You need NS 4+ or IE 4+ to view the images!')
    }

    function generatedefault(){
    generateimage(tempobj.options[tempobj.options.selectedIndex].value)
    }

    if (ie4||ns6||document.layers){
    if (tempobj.options.selectedIndex!=-1){
    if (ns6)
    generatedefault()
    else
    window.onload=generatedefault
    }
    }

    </script>
    <?php
                }
                }
          }
       }
    }
    }
    else {
       echo 'Aby dodać nowy obrazek musisz być zalogowany.<br/><br/>
       <a href="login.php" class="button" style="float:left;">Logowanie</a>
       <a href="rejestracja.php" class="button" style="margin-left:10px;float:left;">Rejestracja</a>
       <div style="clear:left;"></div>';
    }
    ?>

    0 0