myGully.com

myGully.com (https://mygully.com/index.php)
-   Entwicklung & Programmierung (https://mygully.com/forumdisplay.php?f=72)
-   -   php OOP Grafik aus Methode zurückgeben (https://mygully.com/showthread.php?t=2881691)

Firefox64 28.03.13 12:39

php OOP Grafik aus Methode zurückgeben
 
Olla!

Ich habe eine Funktion die eine Captcha Erstellt:
PHP-Code:

function Captcha_gen()
        {
            
/*Captcha Generator*/
            
unset( $_SESSION['captcha_code'] );
            
header('Content-type: image/png');                                                     //Der Header sorgt dafür das die Ausgabe nur als Grafik erfolgt
            
            
$BGNr rand(122);                                                                //Zufällige auswahl
            
$Captcha imagecreatefrompng("captcha_bgs/background".$BGNr.".png");                //des Hintergrundbildes
        
            
$Zeichen = array(A,C,D,E,F,L,M,N,T,U,V,W,X,2,3,7,9);                                //Array mit allen im Captcha vorkomenden Zeichen
    
            
for($iL=0;$iL<=5;$iL++)                                                                //Gennerierung 6 Zufälliger Zeichen
            
{
                
$String[$iL] = $Zeichen[rand(0count($Zeichen))];
                
$Farbe=ImageColorAllocate($Captcharand(1255),rand(1255),rand(1255));    //Festlegen der Schriftfabe in RBG
                
$FontNr rand(14);                                                            //Zufällige auswahl der Schriftart
                
ImageTTFText ($Captcha45, -5$iL*5050$Farbe"Fonts/font0".$FontNr.".ttf"$String[$iL]);    
                
//Hintergrundgrafik, Schriftgröße, Winklel, Position x/y, Schrifftfarbe, Schriffart, String,    
            
}
            
$CaptchaCode $String[0].$String[1].$String[2].$String[3].$String[4].$String[5];
            
$_SESSION['captcha_code'] = $CaptchaCode;        
            
$Captcha imagepng($Captcha);
            return 
$Captcha;                    
        } 

Diese Funktioniert auch!
Nun möchte ich die Erzeugte Grafik aus geben...
In etwa so:
PHP-Code:

$Captcha = new Captcha();
        
$Captcha $Captcha->Captcha_gen();
        
        echo 
'<img src="'.$Captcha.'">'

Ich weiß leider nicht wie :cry:


Hat einer ne Idee?

edit: Wie ist mir das den Bitte in den Grafikbereich gerutscht!?
Sorry Leute...

Tiega 31.03.13 13:40

Was hat das mit OOP zu tun? Du hast da nur eine Funktion? Und keine Klasse...

Das heißt du musst auch nur die Funktion aufrufen.


PHP-Code:

echo '<img src="'.Captcha_gen();.'">'

EDIT:

BTW du solltest die datei auch Temporer speichern und nur die URL aus der Funktion zurückgeben:

imagepng($Captcha, 'Captcha.png');

drwhattson 06.04.13 11:44

Das wird aber ein sehr einfach zu knackendes Captcha. Nimm lieber recaptcha,

schaut euch mal antigate an ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:05 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.