Frage: Dynamische Signatur

mageDSA

Mitglied
Hallo !
Als erstes der Code:

Code:
<?php 
Header("Content-Type: image/png"); 
# Hier wird der Header gesendet, der später die Bilder "rendert" ausser png kann auch jpeg dastehen 

################################################## 
$width = 100; // Später die Breite des Rechtecks 
$height = 100; // Später die Höhe des Rechtecks 
$img = ImageCreateFromJPEG('g.jpg'); # Hier wird das Bild einer von einem Vorhandenen Bild benutzt (hier: g.jpg) 
# 
# Seit Version 1.6 der GD-Library ist .gif abgeschaltet also: 
# 
#--------------------------------------------------- 
# Zuhause von der GD-Lib: <a href="http://www.boutell.com/gd/" title="http://www.boutell.com/gd/ ansurfen" target="_blank">http://www.boutell.com/gd/</a> 
#--------------------------------------------------- 
# 
# Wenn ihr die GD-Library 2.0 habt immer .jpg oder .png aber kein .gif benutzen! 
# 
# So kann man GD-Library einstellen: 
# 
# 1. Öffnet im Windows-Ordner die php.ini z.B. C:\Windows\php.ini 
# 
# 2. Jetzt sucht (STR+F) nach ';Windows Extensions' (ohne den Hochkommata) 
# 
# 3. Dann schreibt 'extension=php_gd2.dll' unter 'extension=php_gd.dll' 
# 
# 4. Jetzt macht ein ; vor 'extension=php_gd.dll'. Also aus 'extension=php_gd.dll' mach ';extension=php_gd.dll' 
# 
# 5. Oder wenn ihr GD-Lib 1.X wollt, dann macht es umgekehrt 
################################################## 

$black = ImageColorAllocate($img, 0, 0, 0); # Farbe schwarz mit $black festlegen 

$font_height = ImageFontHeight(3); # Hier wird die Schrifthöhe mit 3 belegt (hier könnt ihr mit den Werten rumprobieren) 

$font_width = ImageFontWidth(3); # Hier wird die Schriftbreite mit 3 belegt (hier könnt ihr mit den Werten rumprobieren) 

$image_height = ImageSY($img); # Hier wird in einer Variable die Höhe des Bildes (hier g.jpg) gespeichert 

$image_width = ImageSX($img); # Hier wird in einer Variable die Breite des Bildes (hier g.jpg) gespeichert 

$text = 'Mein Name ist LLCoolDannY!'; # Hier ist der Text, der später im Bild stehen soll 

$length = $font_width*strlen($text); # Hier wird die Schriftbreite an das Bild angepasst 

# Hier kriegt man durch Teilungen die Mitte des Bildes heraus # 

$image_center_x = ($image_width/2)-($length/2); 
$image_center_y = ($image_height/2)-($font_height/2); 

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

ImageString($img, 3, $image_center_x, $image_center_y, $text, $black); 
/** 
* Die 3 nach der Variable $img steht für die GD-Lib interne Schriftart diese geht von 1-5 (also ausprobieren) 
* 
############################################################### 
* Mit $image_center_x und $image_center_y wurde die Mitte herausgefunden und nun angewandt. (Dort können auch eigene Zahlen stehen) 
* Beispiel: 
* 
* ImageString($img, 3, 200, 150, 'Das ist ein Testtext', $black); 
* 
* Hier ist der String (Zeichenkette, also der Text) 200px von oben und 150px von links vom Bildrand entfernt 
* 
############################################################### 
* 
*/ 

ImagePNG($img); # Hier wird das Bild PNG zugewiesen 
ImageDestroy($img) # Hier wird der Speicherplatz für andere Sachen geereinigt 
?>

So jetzt die Fragen:

Das Beispiel funktioniert einwandfrei zu sehen auf http://www.magedsa.at/test/test.php

Nur wenn ich rechts klicke zeigt es mir an daß es ein test.php files ist (Explorer)

Ich würde gerne so ein Bild als Hintergrund haben und mit Php ins Bild die IP Datum Uhrzeit reinmachen (Das ist nicht das Problem)

Nur steh ich vor einem Rätsel wie ich das als Bilddatei in der Signatur verlinken kann und wie sich das Bild dann immer wieder erneuert wenn zum Beispiel das Datum abgefragt würde.

Vielleicht kann mir jemand helfen

Danke

mageDSA

EDIT:

So hab noch ein wenig rumgespielt und bin mal soweit gekommen

http://www.magedsa.at/test/test.php?img=esso.jpg

Ich übergebe einfach die Variable ok geht zur Not ^^

Lieber wärs mir wenn es so wäre

http://www.magedsa.at/test/esso.jpg

Weil so ist es nicht ersichtlich in welchem Ordner sich das Script befindet !

VIelleicht hat einer ne Idee

:)
 
Zuletzt bearbeitet:
Das kannst du z.B. per .htaccess und mod_rewrite erreichen.....
indem du serverseitig Anfragen an das esso.jpg an die PHP weiterleitest.

Oder per force_type, da wäre es vllcht. möglich, das Skript mit der Endung PHP zu speichern....per "force_type" könntest du einstellen, dass Dateien mit jpg-Endung auch durch PHP geparst werden.
 
Öhm wo is dein problem? Das Script liefert doch ein bild zurück dann machs doch so:

<style>
body {background-image:url(http://www.magedsa.at/test/test.php)}
</style>

du kannst es acuh so machen:

<img src=http://www.magedsa.at/test/test.php>
wie du siehst, kannst dus so hernehmen, als wäre es eben ein Bild dann wirds dynamisch bei jedem Aufruf generiert.
 
Danke für die Antworten !

@Sicaine

Ja aber erstens will ich keine *.php Endung weil das nicht schick aussieht und ich kann es in diversen Foren nicht inkludieren da ja die Endung prüfen und *.php nicht als Bild Format gelten lassen.

Beispiel Burning Boards 1.x

Ich sehe oft auf anderen Seiten auch die Spielerein mit den Dynmischen Signaturen aber dort sind sie als Bild Format angegeben (Png Jpeg gif)

Und genau auf das will ich hinaus

So kann ich es auch umleiten http://www.magedsa.at/test/test.php?img=esso.jpg

Aber das gefällt mir nicht !



:)

EDIT:

So jetzt hab ich bei ImagePNG noch das verzeichnis und die endung angegeben.
Und folgendes kommt dabei raus.

http://www.magedsa.at/test/tom.png

Das test.php Script hab ich einmal gestartet und die Datei tom.png wurde erstellt.

Und das kann ich jetzt auch in Foren verlinken.

Doch nur fehlt mir jetzt die dynamik :-) das in den Foren sich das Bild immer wieder erneurt.

*grübel*
 
Zuletzt bearbeitet:
Öhm wie wärs wenn du ein headerumleitugnsscript schreibst? was von esso.gif auf esso.php umleitet?
 
Packe in das Verzeichnis mit dem tom.png folgende .htaccess:
Code:
<Files ~ "tom\.png$">
ForceType application/x-httpd-php
</Files>
Dann speichere dein PHP-Skript, welches das dynamische Bild erzeugt, unter dem Namen tom.png und fertig.

Das veranlasst PHP, auch dieses PNG zu parsen...(was es normalerweise ja nicht tun würde:-))

Das Ergebnis kann dann dynamisch sein, so du willst, z.B. so:

tom.png


....(und vielleicht etwas hübscher:p )
 
Zuletzt bearbeitet:
Hi,

mich würde interessieren mit welchen Befehlen du den der Referer usw rauskriegst, ich krieg das nämlich nicht hin

Danke dafür
 
Zurück