Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Problem z obrazkami
Forum PHP.pl > Forum > PHP
sebekzosw
Mam taki skrypt php:

  1. <?php
  2. function generuj_obrazek($imgname) {
  3.        global $ustawienia;
  4.        $imgname = &#092;"pliki/wpadki/\".$imgname.\".jpg\";
  5.        list($width, $height) = getimagesize($imgname);
  6.  
  7.        $im = @imagecreatefromjpeg($imgname);
  8.        $white = @imagecolorallocate($im, 0, 0, 0);
  9.        $bialy = @imagecolorallocate($im, 255, 255, 255);
  10.        $grey = @imagecolorallocate($im, 128, 128, 128);
  11.        $text = 'www.WpadkiFilmowe.pl';
  12.        $font = 'css/tahomabd.ttf';
  13.        $rozmiar_czcionki = 10;
  14.  
  15.         $box = imagettfbbox($rozmiar_czcionki, 0, $font, $text);
  16.        $x = (int)abs(($box[2] - $box[0]));
  17.        $y = (int)abs(($box[1] - $box[7]));
  18.  
  19.        $sx=(($width/2)-($x/2));
  20.        $sy=((20/2)+($y/2))-5;
  21.  
  22.  
  23.  
  24.        @imagefilledrectangle($im, 0, 0, 0, 0, $white);
  25.        @imagettftext($im, 10, 0, $sx, ($sy+10), $bialy, $font, $text);
  26.        if($height > 400) {
  27.            @imagettftext($im, 10, 0, $sx, ($height-$sy), $bialy, $font, $text);
  28.        }
  29.        @imagejpeg($im);
  30.        @imagedestroy($im);
  31.    }
  32.  
  33.    function generuj_blad() {
  34.        //Tworzenie nowego, pustego obrazka
  35.        //$nowy = imagecreatefromjpeg($tlo);
  36.        $nowy = imagecreate(500, 250);
  37.        imagecolorallocate($nowy, 60, 60, 60);
  38.        //Stałe wartości
  39.        $width = 500;
  40.        $height = 200;
  41.        $czcionka = &#092;"css/tahomabd.ttf\";
  42.        $kolor_tekstu = imagecolorallocatealpha($nowy, 255, 255, 255, 0);
  43.        $kolor_tekstu3 = imagecolorallocatealpha($nowy, 255, 255, 255, 0);
  44.  
  45.        //Obrazek 1
  46.        $tekst1 = &#092;"Dla użytkowników z PREMIUM!\";
  47.  
  48.        imagettftext($nowy, 20, 0, 40, 50, $kolor_tekstu, $czcionka, $tekst1);
  49.  
  50.        //obrazek 2
  51.        $tekst2 = &#092;"Obawiam się, że chcesz zobaczyć obrazek, który nie jest dostępny dla\nzwykłego użytkownika. Aby zobaczyć obrazek i pozbyć się reklam\nnależy zakupić premium!\n\nWięcej informacji znajdziesz tutaj: WpadkiFilmowe.pl/Premium.html\";
  52.  
  53.        imagettftext($nowy, 10, 0, 15, 100, $kolor_tekstu, $czcionka, $tekst2);
  54.  
  55.        $rezultat = dbquery(&#092;"SELECT * FROM wpadki WHERE id_wpadki='\".$_GET[\"obrazek\"].\"'\"); //pobieranie nicku użytkownika o id == uzytkownik_wpadki
  56.        $aaa = dbarray($rezultat);
  57.  
  58.        //obrazek 3
  59.        $tekst3 = &#092;"Obrazek będzie dostępny za darmo od:\";
  60.  
  61.        $tekst4 = dokiedypremium($aaa[&#092;"od_kiedy_dla_wszystkich\"], 'od godziny');
  62.  
  63.        $box = imagettfbbox(10, 0, $czcionka, $tekst3);
  64.        $x = (int)abs(($box[2] - $box[0]));
  65.        $y = (int)abs(($box[1] - $box[7]));
  66.  
  67.        $sx=((500/2)-($x/2));
  68.        $sy=((250/2)+($y/2))-5;
  69.  
  70.        imagettftext($nowy, 10, 0, $sy-17, 220, $kolor_tekstu, $czcionka, $tekst3);
  71.        imagettftext($nowy, 10, 0, $sy-30, 235, $kolor_tekstu, $czcionka, $tekst4);
  72.  
  73.  
  74.        ImageJpeg($nowy, '', 80);
  75.        imagedestroy($nowy);
  76.  
  77.  
  78.    }
  79. header(&#092;"Content-Type: image/jpeg\");
  80. if (isset($_GET[&#092;"obrazek\"])) {
  81.    generuj_obrazek($_GET[&#092;"obrazek\"]);
  82.  
  83.    if($ustawienia['stronadlapacc'] == &#092;"1\") {
  84.        if(UZYTKOWNIK) {
  85.            if ($userdata['premium_uzytkownika'] != 0 OR time() < $userdata['premium_uzytkownika'] OR ADMINISTRATOR OR VIP OR SPONSOR OR PRZYJACIEL) {
  86.                generuj_obrazek($_GET[&#092;"obrazek\"]);
  87.            } else {
  88.                generuj_blad();
  89.            }
  90.        } else {
  91.            generuj_blad();
  92.        }
  93.    } else {
  94.        generuj_obrazek($_GET[&#092;"obrazek\"]);
  95.    }
  96. }
  97. ?>



Funkcja generuj_obrazek dodaje do obrazka link do strony, a generuj_blad ewentualny błąd.

Wszystko działa ok - możecie sprawdzić tutaj:
http://wpadki.webd.pl/zobaczObrazek,150.html

jednak jak dodam linijkę kodu
include("glowne.php");

to się coś sypie. Nie wyświetlają się żadne obrazki - w tym pliku są wszystkie funkcje niezbędne do łączenia się z bazą - coś podobnego jak w PHP-Fusion...

Co zrobić, aby wszystko było ok??

P.S.: dodatkowo w pliku zobaczObrazek,150.html wyświetla mi taki błąd:
Warning: Cannot modify header information - headers already sent by (output started at E:\Strona\FW\config.php:8) in E:\Strona\FW\obrazki2.php on line 272

a linia 272 to: header("Content-Type: image/jpeg");

Już sobie poradziłem smile.gif

  1. <?php
  2. $db_host="host";
  3. $db_user="user";
  4. $db_pass="haslo";
  5. $db_name="nazwa";
  6. ?>


W pliku config na końcu były dwie spacje :/ winksmiley.jpg
Fifi209
@up

Tak warto dodać, że z pliku też należy usunać BOM. ;d
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.