Fotografika | Foto forum

Galeria 4images => 4images ... [MOD] modyfikacje => Wątek zaczęty przez: andreoid Listopad 20, 2006, 11:48:56



Tytuł: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 11:48:56
MOD - Sygnatura - Baner

oryginalny tytuł

[MOD] Signature image v2.22
Autor:           V@no (http://www.4homepages.de/forum/index.php?PHPSESSID=d0683354595199134e215f8db48a277d&action=profile;u=596)
Wersja: v2.22

Modyfikację możemy zaliczyć do bardzo pożytecznego gadżetu.
Jest to dynamiczny baner który oprócz losowo wybranej miniaturki zdjęcia, wyświetla  również bieżącą statystykę galerii.
Możemy użyć go jako sygnaturę lub podpis w jakimś forum, może być dodany do innej strony domowej. Będzie to z pewnością interesująca reklama, która zwiększy popularność naszej galerii.
np: http://www.gorzow24.pl/?forum,907,990,0,2
np: http://4images.toplista.pl/

Demo (http://4images.fotoan.com/4images_03/faq.php)

Część 1

Instalacja: łatwa
Czas: około 20 minut

Uwaga !!!
Modyfikacja funkcjonuje tylko w tedy, kiedy zainstalowane PHP na serwerze wspomagane jest aplikacją graficzną GD v2.x

Nowe pliki:
/signature.php
.htaccess

Nowe katalogi:
/signatures
/tmp

Nowa grafika:
/signature/signature.png

Krok 1.

Tworzymy nowy plik signature.php w katalogu instalacyjnym 4images

Kod:
<?php
################################
#  signature.php version 2.21  #
# - - - - - - - - - - - - - - -#
#  Copyright C V@no 2004-2005  #
################################
#                              #
#        TERMS OF USE          #
#                              #
#   NO PORNOGRAPHY OR ANY      #
#   OTHER PICTURES THAT COULD  #
#   BE TREATED AS OFFENSIVE    #
#   MAY BE SHOWED ON 4IMAGES   #
#   FORUM OR ANYWHERE ELSE     #
#   WHERE ITS NOT ACCEPTIBLE.  #
#                              #
#    PLEASE RESPECT OTHERS!    #
#                              #
################################

// ------- Config -----------
$random_image 1//show random image
$random_fast 0//if your mysql account doesn't have permission to create/delete temporary tables, set this to 0
$debug 0//turning this on, will ignore expiration time, meaning every request will create a new image. change this to 0 before u publish your signature!
$expire 20//seconds before image will be expired and recompilled with new random image and information (lower this will encrease server load!)
$type "png"//image type: png or jpeg
$quality "50"//image quality when used jpeg
define('ROOT_PATH''./'); //path to your 4images root dir with trailing slash! must be ralative ( ./ or ../ or combination of these) and NOT full internet or local (http://example/4images/ or /www/blah/4images/)
$signature_template_dir "./signatures/"//directory with signature template images WITH TRAILING SLASH!!!
$signature_template "signature.png"//default signature template image filename
$signature_template_random 0//use random template image? (0 = no | 1 = yes)
$path "/tmp/"// WRITEBLE dir (chmod 777), where compilled image will be stored (does not requere access from web)
$tmpfname $path."signature.tmp"// filename for the compilled image (extension does not metter)
$tmptname $path."signature.id"// filename for the file where some extra info will be stored in (image id)
$template "default"//name of the template which icons will be used, if thumbnail not found
$sitename "Statystyka galerii"//signature header
$fonts_dir ""//directory with custom fonts WITH TRAILING SLASH! (leave blank if no fonts)
$fonts = array(); // an array with font names the first number is the number that u can use in $fsize variable, it must be sequenced! and first item must have number 6 or larger!
/*
//an example array:
$fonts = array(
               6  => "micross8px.gdf",
               7  => "micross9px.gdf",
               8  => "micross10px.gdf",
               9  => "micross12px.gdf"
);
*/
$fsize 2//font type (1 to 5 for build-in fonts and 6 to XX for your custom fonts (see $font array above)
$offset 7//offset from the left, right and bottom, uses for random image and the text (not used if random image disabled)
$offset2 99//extra offset from the left (place where random image will be embeded if its enabled. Not used if random image disabled)
$spacing 11//height of each line of text
$start 27//offset from top (odleg?o?? tekstu od g?rnej kraw?dzi)
$tiny 19//an extra space at the begining of each line (odleg?o?? tekstu od obrazka)
$not_in_cat "0"//list of categories which should not be included for random image, separated by coma (i.e. "1,2,3,7") "0" - means disabled
$auth 0//permission level for auth_viewimage (0 = All, 2 = Members, 3 = Private or 9 = Admin) Refer in /includes/constants.php
$peruser 1//alow per user random image (images uploaded by XX user. Usage: signature.php?user=XX)
$noimage "jpeg.gif"//icon name if no random image was found
$new_cutoff 7//Days when images treated as new
$lang_images "Zdjęć: ";
$lang_users "Użytkowników: ";
$lang_cat "Kategori: ";
$lang_new_user "Nowi użytkownicy: ";
$lang_online "Online: ";
$lang_comments "Komentarzy: ";


// --------- End Config ---------- 

$peruser = ($peruser && isset($_GET['user']) && intval($_GET['user'])) ? intval($_GET['user']) : "";
$tmpfname .= $peruser;
$tmptname .= $peruser;
if (isset(
$_GET['go']) && $_GET['go'])
{
  if (
$handle = @fopen($tmptname"rb"))
  {
    while (!
feof($handle))
    {
      
$buffer fgets($handle4096);
      
$imgid intval($buffer);
    }
    
fclose($handle);
  }
  
$nozip 1;
  
define('GET_CACHES'1);
  include(
ROOT_PATH.'global.php');
  require(
ROOT_PATH.'includes/sessions.php');
  
$user_access get_permission();
  
$url $site_sess->url(ROOT_PATH."index.php""&");
  if (
$imgid && $random_image)
  {
    
$sql "SELECT cat_id
            FROM "
.IMAGES_TABLE."
            WHERE image_id = $imgid"
;
    if (
$row $site_db->query_firstrow($sql))
    {
      if (
check_permission("auth_viewcat"$row['cat_id']) || check_permission("auth_viewimage"$row['cat_id']))
      {
        
$url = (check_permission("auth_viewimage"$row['cat_id']) && check_permission("auth_viewcat"$row['cat_id'])) ? $site_sess->url(ROOT_PATH."details.php?image_id=".$imgid) : ((check_permission("auth_viewcat"$row['cat_id'])) ? $site_sess->url(ROOT_PATH."categories.php?cat_id=".$row['cat_id']) : $url);
      }
    }
  }
  
header("Location: ".$url);
  exit;
}
$imageid 0;
$time = @filemtime($tmpfname);
if (
$handle = @fopen($tmptname"r"))
{
  if (!
feof($handle))
  {
    
$buffer fgets($handle4096);
    
$imageid intval($buffer);
  }
  
fclose($handle);
}
$current_time time();
if (!
$time || (($current_time $time) > $expire || ($current_time $time) < 0) || $debug)
{
  
$show = array();
  include(
ROOT_PATH.'config.php');
  include(
ROOT_PATH.'includes/constants.php');
  include(
ROOT_PATH.'includes/db_mysql.php');
  
define('MEDIA_PATH'ROOT_PATH.MEDIA_DIR);
  
define('THUMB_PATH'ROOT_PATH.THUMB_DIR);
  
define('MEDIA_TEMP_PATH'ROOT_PATH.MEDIA_TEMP_DIR);
  
define('THUMB_TEMP_PATH'ROOT_PATH.THUMB_TEMP_DIR);
  
define('TEMPLATE_PATH'ROOT_PATH.TEMPLATE_DIR."/".$template);
  
define('ICON_PATH'ROOT_PATH.TEMPLATE_DIR."/".$template."/icons");
  include(
ROOT_PATH.'includes/functions.php');
  
$site_db = new Db($db_host$db_user$db_password$db_name);


// --- Random image -----
  
if ($random_image)
  {
    if (
$random_fast)
    {
      
mt_srand((double)microtime() * intval(session_id()));
      
$temptab "tab_".mt_rand(0,1000000);
      
$sql "CREATE TEMPORARY TABLE ".$temptab." TYPE  =  HEAP
              SELECT i.image_id, i.cat_id
              FROM "
.IMAGES_TABLE." i
              LEFT JOIN "
.CATEGORIES_TABLE." c ON c.cat_id = i.cat_id
              WHERE i.image_active = 1 AND c.auth_viewcat = $auth AND i.cat_id NOT IN ($not_in_cat)"
.(($peruser) ? " AND i.user_id = ".$peruser "").(($imageid) ? " AND i.image_id <> ".$imageid "")."
              ORDER  BY RAND()
              LIMIT 1"
;
      
$result $site_db->query($sql);
      
$sql "SELECT t.image_id, t.cat_id, i.user_id, i.image_name, i.image_media_file, i.image_thumb_file
              FROM "
.$temptab." AS t
              LEFT JOIN "
.IMAGES_TABLE." AS i ON i.image_id=t.image_id";
      
$imagedata $site_db->query_firstrow($sql);
      
$sql "DROP TABLE ".$temptab;
      
$result $site_db->query($sql);
    }
    else
    {
      
$sql "SELECT i.image_id, i.cat_id, i.user_id, i.image_name, i.image_media_file, i.image_thumb_file
              FROM "
.IMAGES_TABLE." i
              LEFT JOIN "
.CATEGORIES_TABLE." c ON c.cat_id = i.cat_id
              WHERE i.image_active = 1 AND c.auth_viewcat = $auth AND i.cat_id NOT IN ($not_in_cat)"
.(($peruser) ? " AND i.user_id = ".$peruser "").(($imageid) ? " AND i.image_id <> ".$imageid "")."
              ORDER  BY RAND()
              LIMIT 1"
;
      
$imagedata $site_db->query_firstrow($sql);
    }
    
$thumb = (empty($imagedata)) ? ICON_PATH."/".$noimage get_file_path($imagedata['image_media_file'], "thumb"$imagedata['cat_id']);
  }
  else
  {
    
$offset $offset2 0//no need any offset if random image disabled
  
}
// --- Total users -----
  
$sql "SELECT COUNT(*) AS total_users
          FROM "
.USERS_TABLE."
          WHERE user_level > "
.USER_AWAITING;
  
$row $site_db->query_firstrow($sql);
  
$show['total_users'] = $row['total_users'];

// --- Total not activated users -----
  
$sql "SELECT COUNT(*) AS total_users
          FROM "
.USERS_TABLE."
          WHERE user_level = "
.USER_AWAITING;
  
$row $site_db->query_firstrow($sql);
  
$show['total_users_awaiting'] = $row['total_users'];

// --- Lattest username -----
  
$sql "SELECT user_name
          FROM "
.USERS_TABLE."
          WHERE user_level > "
.USER_AWAITING."
          ORDER BY user_id DESC"
;
  
$row $site_db->query_firstrow($sql);
  
$show['new_user'] = stripslashes($row['user_name']);

// --- Total images -----
  
$sql "SELECT COUNT(*) AS total_images
          FROM "
.IMAGES_TABLE."
          WHERE image_active = 1"
;
  
$row $site_db->query_firstrow($sql);
  
$show['total_images'] = $row['total_images'];

// --- Total new images -----
  
$new_cutoff time() - 60 60 24 $new_cutoff;
  
$sql "SELECT COUNT(*) AS total_new_images
          FROM "
.IMAGES_TABLE."
          WHERE image_active = 1 AND image_date > "
.$new_cutoff;
  
$row $site_db->query_firstrow($sql);
  
$show['total_new_images'] = $row['total_new_images'];

// --- Total categories -----
  
$sql "SELECT COUNT(*) AS total_categories
          FROM "
.CATEGORIES_TABLE;
  
$row $site_db->query_firstrow($sql);
  
$show['total_categories'] = $row['total_categories'];

// --- Total comments -----
  
$sql "SELECT SUM(image_comments) AS sum
          FROM "
.IMAGES_TABLE;
  
$row $site_db->query_firstrow($sql);
  
$show['comments'] = $row['sum'];

// --- Online users -----
  
$time_out time() - 300;
  
$sql "SELECT session_user_id, session_ip
          FROM "
.SESSIONS_TABLE."
          WHERE session_lastaction >= $time_out"
;
  
$result $site_db->query($sql);
  
$show['guests_online'] = $show['reg_online'] = 0;
  while (
$row $site_db->fetch_array($result))
  {
    if (
$row['session_user_id'] != GUEST)
    {
      if (!isset(
$prev_user_ids[$row['session_user_id']]))
      {
        
$show['reg_online']++;
      }
      
$prev_user_ids[$row['session_user_id']] = 1;
    }
    else
    {
      if (!isset(
$prev_session_ips[$row['session_ip']]))
      {
        
$show['guests_online']++;
      }
    }
    
$prev_session_ips[$row['session_ip']] = 1;
  }
//-----------------------

  
if (!empty($fonts_dir) && count($fonts))
  {
    foreach (
$fonts as $key => $val)
    {
      
imageloadfont($fonts_dir.$val);
    }
  }
  
$total_online $show['reg_online'] + $show['guests_online'];
  
$online " (".$show['reg_online']." member".(($show['reg_online'] > || !$show['reg_online'])? "s" "")." and ".$show['guests_online']." guest".(($show['guests_online'] > || !$show['guests_online'])? "s" "").")";
  
$far $offset2+$tiny+(strlen($lang_new_user))*($fsize+4);
  
//array with data:
  //[0] - font type
  //[1] - offset
  //[2] - text
  //[3] - color (i.e. "text_color" will use $text_color variable)
  
$stats = array(
                  array(array(
$fsize$offset2+$tiny$lang_images"text_color"), array($fsize$far$show['total_images']." (".$show['total_new_images']." nowych)""text_color")),
                  array(array(
$fsize$offset2+$tiny$lang_cat"text_color"), array($fsize$far$show['total_categories'], "text_color")),
                  array(array(
$fsize$offset2+$tiny$lang_comments"text_color"), array($fsize$far$show['comments'], "text_color")),
                  array(array(
$fsize$offset2+$tiny$lang_users"text_color"), array($fsize$far$show['total_users'], "text_color"), array($fsize$far+strlen($show['total_users'])*($fsize+4), " i ".$show['total_users_awaiting']." nieaktywnych""text_color")),
                  array(array(
$fsize$offset2+$tiny$lang_online"text_color"), array($fsize$far$total_online"red"), array($fsize$far+strlen($total_online)*($fsize+4), $online"text_color")),
                  array(array(
$fsize$offset2+$tiny$lang_new_user"text_color"), array($fsize$far$show['new_user'], "text_color")),
  );
  if (
$signature_template_random)
  {
    if (
$dir = @opendir($signature_template_dir))
    {
      
$list = array();
      while (
$file = @readdir($dir))
      {
        if (!
is_dir($signature_template_dir.$file) && is_file($signature_template_dir.$file) && strtolower(substr(strrchr($file,"."), 1)) == "png")
        {
          
$list[] = $file;
        }
      }
      @
closedir($dir);
      
$signature_template $list[array_rand($list)];
    }
  }
  
$im ImageCreateFromPNG($signature_template_dir.$signature_template);
  
$width imagesx($im);
  
$height imagesy($im);
  
$text_color ImageColorAllocate ($im000);
  
$red ImageColorAllocate ($im25500);
//  ImageString($im, 3, $offset2+(($width-$offset2)/2)-(strlen($sitename)*7/2), 4, $sitename, $text_color);
  
ImageString($im3$offset2+$tiny4$sitename$text_color);
  
$i $start;
  foreach (
$stats as $key)
  {
    if (
$key[0][2] == $lang_online && !$total_online)
    {
      continue;
    }
    foreach (
$key as $val)
    {
      
ImageString($im$val[0], $val[1], $i$val[2], $$val[3]);
    }
    
$i $i $spacing;
  }
  if (
$random_image)
  {
    
$image_info getimagesize($thumb);
    
$types = array(=> "gif"=> "jpeg"=> "png");
    
$th "imagecreatefrom".$types[$image_info[2]];
    
$width_start $image_info[0];
    
$height_start $image_info[1];
    
$dimension $offset2-$offset*2;
    if (
$height $image_info[1] < $offset && $height $offset2 $offset)
    {
      
$dimension $height $offset*2;
    }
    
$width_end $dimension;
    
$height_end $dimension;
    if ((
$width_start $width_end || $height_start $height_end) && $width_start && $height_start && $width_end && $height_end)
    {
       
$ratio $width_start $height_start;
      if (
$ratio 1)
      {
        
$width_end $dimension;
        
$height_end round(($dimension/$width_start) * $height_start);
      }
      else
      {
        
$width_end round(($dimension/$height_start) * $width_start);
        
$height_end $dimension;
       }
    }
    elseif (
$width_start || $height_start)
    {
       
$width_end $width_start;
       
$height_end $height_start;
    }
    
$temp imagecreateTrueColor($width_end$height_end);
    if (
$image $th($thumb))
    {
      
imagecopyresampled($temp$image0000$width_end$height_endImageSX($image), ImageSY($image));
    }
    
$posx round(($offset2-$width_end)/2);
    
$posy round(($height-$height_end)/2);
    
imagecopymerge($im,$temp$posx$posy00$width_end$height_end100);
    
ImageRectangle($im$posx-1$posy-1$posx+$width_end-1$posy+$height_end-1$text_color);
  } 
  
$function "Image".$type;
  
$function($im,$tmpfname,(($type == "png") ? $quality)); 
  
ImageDestroy($im);
  
$handle = @fopen($tmptname"wb");
  
$contents = @fwrite($handle, (($random_image) ? $imagedata['image_id'] : 0));
  @
fclose($handle);
//end compilling new image
header('Last-Modified: '.gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1
header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1
header("Content-disposition: filename=signature".MD5(time()).".".$type);
header("Content-Type: image/".$type);
readfile($tmpfname);
?>



Krok 2.

W górnej części kodu, pliku signature.php,  // ------- Config -----------
dokonamy ustawień konfiguracyjnych.

Najważniejsze punkty konfiguracji:
$random_image = 1;  - aktywacja miniaturki na banerze
$signature_template_dir = "./signatures/"; - ścieżka do katalogu tła graficznego banera
$path = "/tmp/"; - ścieżka do katalogu tmp
$template = "default"; - Twój szablon
$sitename = "Statystyka galerii";  - nagłówek

Krok 3.

Stworzymy katalog /signatures, nadając mu chmod 755
 i /tmp (o ile nie był stworzony wcześniej dla innej modyfikacji), nadając mu chmod 777

Krok 4.

Do katalogu /signatures, dodajemy pliki graficzne naszego tła banera.
Na dole zamieszczone są przykładowe obrazki tła, stworzone przez V@no, które można wykorzystać do rozruchu.
Namawiam do stworzenia własnej grafiki, aby podkreślić wyraz i charakter galerii.
Jakość tła banera graficznego musi być 24-bit i format .png , wymiar standartowy 400px x 99px

Krok 5.

Teoretycznie baner jest gotowy.
Sprawdźmy jego działanie, wpisując w przeglądarce internetowej:
http://www.twoja_domena.pl/signature.php
powinien ukazać się,  baner z wyświetloną statystyką i losowo wybraną miniaturką zdjęcia.
Jeżeli tak nie jest, należy powrócić do konfiguracji i dokonał prawidłowych ustawień.


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 11:50:57
Część 2

Krok 6.

W kroku 5 nadmieniłem, że baner teoretycznie jest gotowy. :-\
Niektórzy z Was stwierdzą, że on faktycznie funkcjonuje, bo został wyświetlony w teście prawidłowo.
Jest jedno ale, grafika tego banera, faktycznie wyświetlana jest w formacie .php.
A jak większość z Was wie, pliki .php czy .html, nie są dopuszczane jako sygnatura lub podpis w forach.
Ale i tutaj mamy ten problem rozwiązany.
V@no w swoim wątku przedstawił dwie możliwości:

a. metoda dotyczy serwer Apache, z aktywowanym mod_rewrite

w katalogu instalacyjnym 4images tworzymy plik  .htaccess

Kod:
RewriteEngine On
#RewriteBase /
RewriteRule ^signature\.png$ signature.php?%{QUERY_STRING}
RewriteRule ^go$ signature.php?go=1&%{QUERY_STRING}
[dokument te musi znajdować się w tym samym katalogu, co signature.php]

Zmieniamy format pliku signature.php na signature.png
W przeglądarce internetowej wpisujemy:
http://www.twoja_domena.pl/signature.png
Wówczas wyświetli się baner w formacie .png

b. metoda dotyczy serwer Apache (najczęściej używana)

w katalogu instalacyjnym 4images tworzymy plik  .htaccess

Kod:
<Files signature.png>
AddType application/x-httpd-php .png
</Files>
[dokument te musi znajdować się w tym samym katalogu, co signature.php]

Zmieniamy format pliku signature.php na signature.png
W przeglądarce internetowej wpisujemy:
http://www.twoja_domena.pl/signature.png
Wówczas wyświetli się baner w formacie .png

Dodatkowo możemy dodać link do naszego banera, tak że po kilknięciu, zostaniemy przekierowani do przeglądarki detalicznej, zdjęcia którego miniaturka wyświetlana jest w danym momencie na banerze.
Link:
http://www.twoja_domena.pl/signature.png?go=1

W kodzie HTML  baner z linkiem:
Kod:
<a href="http://www.twoja_domena.pl/signature.png?go=1"><img src="http://www.twoja_domena.pl/signature.png" border="0"></a>

W  BBcode najczęściej używanym w forach:
Kod:
[url=http://www.twoja_domena.pl/signature.png?go=1] [img]http://www.twoja_domena.pl/signature.png[/img] [/url]


 :) ;)
Informacja:
Stworzona została toplista, wyłącznie dla galerii na bazie 4images, posiadających baner dynamiczny.
Dodaj  galerię do Toplisty i zwiększ jej popularność:
http://4images.toplista.pl/


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: Giovanni Listopad 20, 2006, 14:32:51
Drogi Andreoidzie
Próbuje już wszystkich kombinacj i nic :(

W skrócie od początku

Stworzyłem w katalogu głównym
katalogi
signatures
tmp
utworzyłem w głównym plik .htaccess

Do katalogu signatures skopiowalem próbny plik signature.png

W przeglądarce wpisuj?
http://moja_stronal/signature.php
Komunikat:
Obrazek "http://www.moja_strona/signature.php" nie może zostać wyświetlony, ponieważ zawiera błądy.
Obecnie plik ma nazwę signature.php

Zmieniam nazwę pliku signature.php na signature.png
http://moja_strona/signature.png
Komunikat:
Obrazek "http://www.moja_strona/signature.png" nie może zostać wyświetlony, ponieważ zawiera błędy.

Z plikiem .htaccess próbowałem wersji "a" i "b" i nic :(

Pozostaje aplikacja graficzną GD v2.x
Proszę o pomoc


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 15:11:58
Wykonaj najpierw wszystkie kroki od 1 do 5.
Wykonaj test, jeżeli w kroku 5 nie został wyświetlony baner tak jak opisałem,
popraw ustawienia.
Następnie przejdź do kroku 6.


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: Giovanni Listopad 20, 2006, 15:53:50
Zrobiłem wszystko od nowa
Najpierw postąpiłem według krok 1 do krok 5
Wykonałem test
Efekt

Obrazek "http://moja_strona/signature.php" nie może zostać wyświetlony, ponieważ zawiera błędy.

Potem zmieniłem rozszerzenie pliku signature.php na signature.png
I wykonałem test z opcją "a" a póżniej z opcję "b"

Czyli w kroku 6
Musimy zmienić rozszerzenie pliku "signature"
dodać plik ".htaccess w którym wypróbował albo wariant "a" albo wariant"b"

Próbowałem jednego i drugiego i tak sam efekt :(

Obrazek "http://moja_strona/signature.png" nie może został wyświetlony, ponieważ zawiera błędy. :(


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 16:12:23
Nie przechodź do punktu 6, jeżeli nic się nie wyświetla w punkcie 5.
Jak już mówiłem należy przeprowadzić dokładne ustawienie konfiguracji.

Prawdopodobnie masz źle ustawienia katalogu /tmp

/tmp musisz stworzyć w głównym katalogu 4images nadał chmod 777
i ścieżka do katalogu /tmp u Ciebie będzi ./tmp
czyli:

zmień
Kod:
$path = "/tmp/";

na
Kod:
$path = "./tmp/";
to wynika ze struktury Twojej strony


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: Giovanni Listopad 20, 2006, 16:27:40
Drogi Andreoidzie

Od początku mam utworzony katalog tmp z chmod 777 w katalogu 4images

to jest fragment kodu pliku signature.php który również znajduje się w katalogu 4 images

Kod:
// ------- Config -----------
$random_image = 1; //show random image
$random_fast = 0; //if your mysql account doesn't have permission to create/delete temporary tables, set this to 0
$debug = 0; //turning this on, will ignore expiration time, meaning every request will create a new image. change this to 0 before u publish your signature!
$expire = 20; //seconds before image will be expired and recompilled with new random image and information (lower this will encrease server load!)
$type = "png"; //image type: png or jpeg
$quality = "50"; //image quality when used jpeg
define('ROOT_PATH', './'); //path to your 4images root dir with trailing slash! must be ralative ( ./ or ../ or combination of these) and NOT full internet or local (http://example/4images/ or /www/blah/4images/)
$signature_template_dir = "./signatures/"; //directory with signature template images WITH TRAILING SLASH!!!
$signature_template = "signature.png"; //default signature template image filename
$signature_template_random = 0; //use random template image? (0 = no | 1 = yes)
$path = "./tmp/"; // WRITEBLE dir (chmod 777), where compilled image will be stored (does not requere access from web)
$tmpfname = $path."signature.tmp"; // filename for the compilled image (extension does not metter)
$tmptname = $path."signature.id"; // filename for the file where some extra info will be stored in (image id)
$template = "7dana"; //name of the template which icons will be used, if thumbnail not found
$sitename = "Statystyka galerii"; //signature header
$fonts_dir = ""; //directory with custom fonts WITH TRAILING SLASH! (leave blank if no fonts)
$fonts = array(); // an array with font names the first number is the number that u can use in $fsize variable, it must be sequenced! and first item must have number 6 or larger!
/*

NIe mam pojęcia co robić :(


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 16:44:22
Sprawdziłem cały proces instalacyjny na moim serwerze, jest wszystko OK.
Wobec tego muszę osobiście zajrzeć do plików.
Musisz podać mi dojście na FTP (oczywiście jeżeli chcesz)
Dojście prześlij na prywatę.


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 17:37:22
Tak jak mówiłem, ścieżka do katalogu /tmp była nie prawidłowa
Kod:
$path = "/tmp/";

a powinna być
Kod:
$path = "./tmp/";

jeżeli klikniesz
http://www.klaudunia.yoyo.pl/signature.php
jest wszystko OK.

Problem jest jeszcze jeden, Twój serwer nie akceptuje dokumentów .htaccess
Upewnij się, czy tak jest.
Prawdopodobnie tak, próbowałem przekierować signature.php na signature.png,
ale nic z tego.
Masz serwer darmowy, a te z reguły nie zezwalają na dokumenty .htaccess


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: Giovanni Listopad 20, 2006, 17:44:16
Faktycznie jest ok :)

Dziękuje :)

Czy to że mam darmowy serwer oznacza że nie będzie u mnie do końca funkcjonował ten Mod ??
Jak można sprawdził czy ten serwer akceptuje dokumenty .htaccess ??

No to narazie zatrzymam się z kolejnymi Modami zacznę od poszukania jakiegoś serwera na którym nie będzie reklam i będzie akceptował takie rzeczy.
Zacznę od mojego providera :)

Pozdrawiam
Giovanni


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Listopad 20, 2006, 18:14:55
Na razie jest to jedyny MOD gdzie przekierowywane są plik za pomocą dokumentów .htaccess.
Ale może ich przybywać  pomysłowość ludzi używających 4images jest nie wyczerpana.
Sam skrypt jest dynamicznie rozszerzany.

O technicznej stronie Twojego serwer, dowiesz się o administratora tego serwera lub w suport.

Modyfikację możesz używał, tylko jako baner, dodając go do innych stron domowych.
Używanie go jako podpis, sygnaturę, lub baner w top liście, odpada.

Twój kod będzie wyglądał w ten sposób:

(http://www.klaudunia.yoyo.pl/signature.php) (http://www.klaudunia.yoyo.pl/)

Kod:
<a href="http://www.klaudunia.yoyo.pl"><img src="http://www.klaudunia.yoyo.pl/signature.php" border="0"></a>


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: Giovanni Listopad 20, 2006, 18:24:45
Pięknie Dziękuje !! :)

Znowu Andreoid pokazał cząstkę swojej Wielkiej Wiedzy !!

Zdecydowałem, zmieniam serwer na jakiś porządny. :)

Pozdrawiam
Giovanni


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: zoom Marzec 18, 2007, 11:27:58
niestety umieszczenie pliku .htaccess skutkuje wylozeniem mojej galerii :(


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Marzec 18, 2007, 11:34:12
Trochę się pospieszyłem z poprzednim wątkiem
http://www.fotoan.com/component/option,com_smf/Itemid,19/topic,115.msg470#msg470 (http://www.fotoan.com/component/option,com_smf/Itemid,19/topic,115.msg470#msg470)

Dowiedz się czy Twój serwer akceptuje pliki .htaccess.
Ale jeżeli jest to hosting darmowy to ta funkcja generalnie nie jest dostępna na tego typu hostingach


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: zoom Marzec 18, 2007, 12:19:43
heh pospieszylem sie i ja bo dalem tam odpowiedz...

tak wiec... moj serwer nie obsluguje tych pliwkow. wolalbym go nie zmieniac gdyz wlasnie rozpoczalem wspolprace z goin.pl...

chyba najprosciej bedzie... wyrzucic moje konto z toplisty... chociaz nie chcialbym :(


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Marzec 18, 2007, 12:31:42
Tak jak myślałem, darmowe hostingi generalnie nie obsługują  plików .htaccess.
Nie wiem jaki charakter współpracy podjąłeś z tym hostingiem, ale spróbuj pogadać z administratorem,
może za drobną opłatą coś w tym kierunu zrobi.
Wracając do toplisty narazie jestem zmuszony zablokować wpis, nie usuwam,
Jeżeli wyjaśnisz sprawę z administratorem Twojego serwera to daj znać.


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: misiek.154 Lipiec 18, 2007, 00:45:30
mam mały problem z którym nie potrafię sobie poradzić a mianowicie gdy już zrobiłem z plikiem .htaccess to gdy wpisuje http://www.moja_strona/signature.png to włącza mi ściąganie tego pliku  :-\ jak to zrobić żeby normalnie wyświetlało ???


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Lipiec 18, 2007, 10:17:36
Bardzo, bardzo dziwna sprawa?

Wychodzę z założenia że po wpisaniu:
http://www.moja_strona/signature.php
grafika i statystyka są wyświetlane.
Dowiedz się czy Twój serwer akceptuje pliki .htaccess.
Z tego co widzę, to posiadasz bezpłatny hosting w http://www.yoyo.pl/ (http://www.yoyo.pl/).
Generalnie hosting bezpłatny nie ma zainstalowanych modułów mod_rewrite (http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html), lub są one deaktywowane,
a bez tego pliki .htaccess nie funkcjonują.

To oznacza że plik signature.php nie zostanie przekierowany na signature.png.

PS.: Proszę dodawać link do galerii w przypadku takich problemów.




Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: misiek.154 Lipiec 18, 2007, 15:39:20
Otóż mój serwer akceptuje pliki .htaccess ponieważ nie korzystam z yoyo tylko z ugu gdzie są te pliki akceptowane więc nie wiem jak to jest :( gdy mam plik signature.php to mi wyświetla a gdy zmienię nazwę na signature.png to wyskakuje ten blad ze chce ściągnąć a nie wyświetlić  :(


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: andreoid Lipiec 18, 2007, 16:36:06
Skoro poprawnie wyświetla grafikę i statystykę pod
http://www.moja_strona/signature.php (http://www.moja_strona/signature.php)
to problem tkwi bez wątpienia w .htaccess.
Sprawdzałeś obydwie metody a i b w Kroku 6.
Chcem jeszcze podkreślić że skrypt funkcjonuje tylko na serwerach Apache.


Tytuł: Odp: MOD - Sygnatura - Baner
Wiadomość wysłana przez: toolman Marzec 15, 2008, 13:49:10
Jest mały byk w tłumaczeniu na polski, mianowicie w lini
Kod:
                  array(array($fsize, $offset2+$tiny, $lang_users, "text_color"), array($fsize, $far, $show['total_users'], "text_color"), array($fsize, $far+strlen($show['total_users'])*($fsize+4), " z tego ".$show['total_users_awaiting']." nie aktywnych", "text_color")),

Zamiast
Cytuj
z tego
powinno być
Cytuj
i

Wnioskuję tak, gdyż jak mam obecnie powiedzmy 127 userów, co można sprawdzić w APC, a z sygnatury wynika że userów jest 121, w czym 6 nieaktywnych. A tak naprawdę to jest 121 aktywnych + 6 nieaktywnych = 127 users

No i jeszcze nieaktywnych piszemy razem :D