Lose4Forum - Text als Link - ERLEDIGT (Vielen Dank an alle)

Benutzer-42

abgemeldet
20 April 2006
22.497
1.328
Ich habe dieses Lose4Forum Script, aber das will einfach keinen Text als Grafik ausgeben

woran könnte das liegen?
könnten Voraussetzungen am Server fehlen? wenn ja, wie finde ich das?

hier mal der Teil, der die Grafik ausgeben soll, vielleicht liegt da ja auch der Fehler?!

Code:
if (substr($ausgabe, 0, 7)!='https://') {
    header("Content-type: image/png");

    $Grafik = imagecreate($settings['sig_x'], $settings['sig_y']);
    $f_hinter = imagecolorallocate($Grafik, 240, 240, 240);
    $f_text = imagecolorallocate($Grafik, 10, 0, 210);

    $zeilen = str_split($ausgabe, $settings['sig_textbr']);
    for ($i=0; $i<sizeof($zeilen); $i++) {
        imagestring($Grafik, $settings['sig_textsize'], 6, 1+($settings['sig_textbr_y']*$i), $zeilen[$i], $f_text);
    }

    imagepng($Grafik);
    imagedestroy($Grafik);
 
Kommt denn irgendeine Art der Fehlermeldung? Bei Bildern kann man meistens trotzdem den "Quellcode des Bildes" angucken, wenn es Fehler gab. Ansonsten nimm mal testweise Zeile 2 raus (also die header()-Zeile) und guck, ob Du eine Fehlermeldung kriegst.
 
Zeile 2 rausgelassen
https://signatur.scripteshop24.de/demo.php?id=10

am Server kann es nicht liegen, dieses alte Sig-Text Script zeigt auch alles an
v.php
 
Möglich wäre auch das die GD-Grafik Datenbank bei dir ausgeschaltet ist.

Die kannst du mit phpinfo() überprüfen, sollte es deaktiviert sin, kannst du somit keine Bilder erstellen!
 
die GD sollte funzen

gd

GD Support enabled GD Version bundled (2.0.28 compatible) FreeType Support enabled FreeType Linkage with freetype GIF Read Support enabled GIF Create Support enabled JPG Support enabled PNG Support enabled WBMP Support enabled XBM Support enabled
 
PHP Version 4.4.9


sollte wohl sein

wo genau muss das denn dann hin?
 
Zuletzt bearbeitet von einem Moderator:
Wenn das Skript eine externe Datei hat, in der Funktionen definiert werden, pack's da mit rein. Ansonsten an irgendeine Stelle des Skriptes vor den von Dir gezeigten Zeilen...
 
irgendwie stehe ich auf dem Schlauch

alle Funktionen stehen in der lib.php drin
diese nun auch

habe $string gegen $ausgabe getauscht und $parts gegen $zeilen

aber nun muss ich doch noch an der Routine ind er Ausgabedatei (die oben) noch was ändern, oder?
 
Nein, eigentlich nicht. Der Codeschnippsel aus Dem Link zu den Kommentaren auf php.net, den ich gepostet hatte, bildet die Funktion str_split() nach, wenn diese nicht vorhanden ist. Insofern muss das Codefragment nur einmal irgendwo ausgeführt werden, bevor Deine oben geposteten Zeilen dran sind und schon sollte der Fehler nicht mehr auftreten, da die Funktion ja nun vorhanden ist.
 
hatte die nun da, wo die ganzen Funktionen definiert sind drin und auch in der Datei direkt

beides Mal keine Abhilfe

bin ich nun zu blöd dafür?
oder mache ich was falsch?

damit wir vom selben Code reden:
Code:
if(!function_exists('str_split')) {
    function str_split($string,$string_length=1) {
        if(strlen($string)>$string_length || !$string_length) {
            do {
                $c = strlen($string);
                $parts[] = substr($string,0,$string_length);
                $string = substr($string,$string_length);
            } while($string !== false);
        } else {
            $parts = array($string);
        }
        return $parts;
    }
}


EDIT:
also, hier im Forum wird es nun angezeigt, schon ein Teilerfolg, im Adminmenü des Scriptes noch nicht, denke aber mal, dass es da ähnlich liegen wird, und das eine extra Datei sein wird
 
Ok, wenn's alles nix hilft, müsste man die Zeilen eben umschreiben:
PHP:
if (substr($ausgabe, 0, 7)!='https://') {
    header("Content-type: image/png");

    $Grafik = imagecreate($settings['sig_x'], $settings['sig_y']);
    $f_hinter = imagecolorallocate($Grafik, 240, 240, 240);
    $f_text = imagecolorallocate($Grafik, 10, 0, 210);

    ## Ab hier neue Generierung des Teilarrays
    $zeilen = array();
    $index = 0;    
    while ($index < strlen($ausgabe)) {
    	array_push($zeilen, substr($ausgabe, $index, $settings['sig_textbr']));
    	$index += $settings['sig_textbr'];
    }
    ## Bis hier neue Generierung des Teilarrays

    for ($i=0; $i<sizeof($zeilen); $i++) {
        imagestring($Grafik, $settings['sig_textsize'], 6, 1+($settings['sig_textbr_y']*$i), $zeilen[$i], $f_text);
    }

    imagepng($Grafik);
    imagedestroy($Grafik);
}
 
Zuletzt bearbeitet:
der erste Code funzt
die Ausgabe im Admin (und was ich oben als Demo genommen hatte) wurde in einer extra Datei (hätte man auch sehen können, bin halt blind) der demo.php gemacht
die Ausgabe im Forum, in der ich das die ganze Zeit getestet hatte, aber in der sigview.php :ugly:

nun passt es in beiden, habe es in beide Dateien ergänzt

muss aber mal schauen, ob 1&1 nicht mal den Space vielleicht mit einem Update versehen mag