php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.09.2009, 16:43  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Bild erstellen, speichern und gespeichertes Bild anzeigen

Hallo zusammen, ich habe ein kleines Problem mit einem Signaturengenerator.

Ich habe zwei Dateien, die index.php, auf der sich ein Formular befindet, dort soll auch das erstellte Bild angezeigt werden.

Sowie die absig.php in der sich der Code für die Erstellung des Bildes befindet.

Was ich nun möchte ist, ich gebe Daten in das Formular ein, wähle ein Hintergrundbild aus und klicke auf "absenden" jetzt möchte ich das die absig.php aufgerufen wird, die Werte aus dem Formular übergeben werden und anhand dieser ein Bild erstellt wird, die Datei soll in einem Verzeichnis gespeichert werden und dann auf der index.php Seite über dem Formular angezeigt werden.
Dort soll dann auch kein Bild mit dem Namen "absif.php&ohne_ende_werte" sein, sondern das Bild "erstellt12345.png".

Als letzte "herrausforderung" würde ich gerne die eingegebenen Werte aus dem Formular in den Feldern behalten, bisher habe ich das Problem das nach dem Absenden die Eingabefelder und Pulldownmenüs wieder leer sind bzw auf alten Zustand stehen.

Hier mal ein bisschen Code meiner bisherigen Arbeit.

Die index.php ;

PHP-Code:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Siggen Aion-Base</title>
 
    <script src="http://www.aion-base.de/siggen/302pop.js" type="text/javascript"></script>
    
<style type="text/css">
<!--
.desc {
    text-align: left;
}

#bg {
    position: relative;
}

#text {
    position:absolute;
    left:0px;
    top:0px;
}

#eingabe{
    width:580px;
    height:360px;
    margin:1px;
    clear:both;
    }
#ausgabe{
    height:110px;
    width:415px;
    margin:0 auto;
    float:left;
    }
#banner{
    width:450px;
    margin:0 auto;
}
#seite{
    width:630px;
    height:100%;
    font-size: small;
}
#seite #eingabe form table tr th {
    text-align: left;
}
#seite form #eingabe table tr th {
    text-align: left;
}
#beschr {
    font-size: 0.8em;
}
-->
</style>
</head>

<body>
<div id="seite">
<div id="ausgabe">
<p>
    <?php function RandomString($length=4,$chars='abcdefghijklmnpqrstuvwxyz'){
        
$result '';
        for(
$i=0;$i<$length;$i++) { $result .= $chars[mt_rand(0,strlen($chars)-1)]; }
        return 
$result;
    } 
    
$code md5(RandomString(5)); 

    
$charname '?char='.rawurlencode($_REQUEST[char]);
    
$klasse '&klasse='.rawurlencode($_REQUEST[klasse]);
    
$fraktion '&fraktion='.$_REQUEST[fraktion];
    
$legion '&legion='.rawurlencode($_REQUEST[legion]);
    
$banner '&banner='.$_REQUEST[banner];
    
$face '&face='.$_REQUEST[face];
    
$rahmen '&rahmen='.$_REQUEST[rahmen];
    
?>
    <img border="0" width="400" height="100" src="
        <?php
        $url 
'absig.php'.$charname.$klasse.$fraktion.$legion.$banner.$face.$rahmen.'&mdsumme='.$code;
        echo(
$url);
        
?>
    ">
</p>
</div>
<span id="beschr">Speichert euch das Bild bei Fertigstellung bitte ab.<br>
  Rechtsklick auf das Bild -&gt; &quot;Bild speichern unter&quot;<br>
  Es wird nicht auf unserem Server gespeichert und kann somit auch nicht verlinkt werden. </span><br>
<p> 

</p>
<form method="post" enctype="application/x-www-form-urlencoded">
  <div id="eingabe">
<table width="573" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <th width="164" height="35" scope="col">Charaktername: </th>
    <th width="392" scope="col"><input name="char" type="text" size="20" class="textbox"></th>
    </tr>
  <tr>
    <th height="35" class="desc" scope="row">Klasse:</th>
    <td><select name="klasse" id="idklasse">
      <option>Gladiator</option>
      <option>Templer</option>
      <option>Assassine</option>
      <option value="J&auml;ger">J&auml;ger</option>
      <option value="Beschw&ouml;rer">Beschw&ouml;rer</option>
      <option>Zauberer</option>
      <option>Kantor</option>
      <option>Kleriker</option>
    </select></td>
    </tr>
  <tr>
    <th height="35" scope="row">Fraktion:</th>
    <td><select name="fraktion" id="fraktion">
      <option>Elyos</option>
      <option>Asmodier</option>
    </select></td>
    </tr>
  <tr>
    <th height="35" scope="row">Legion:</th>
    <td><input name="legion" type="text" size="20" class="textbox"></td>
  </tr>
  <tr>
    <th height="35" scope="row">Face</th>
    <td><select name="face" id="face">
      <option value="">None</option>
       <option value="face1.png">Face 1</option>
      <option value="face2.png">Face 2</option>
      <option value="face3.png">Face 3</option>
      <option value="face4.png">Face 4</option>
      <option value="face5.png">Face 5</option>
      <option value="face6.png">Face 6</option>
      <option value="face7.png">Face 7</option>
      <option value="face8.png">Face 8</option>
      <option value="face9.png">Face 9</option>

    </select></td>
  </tr>
  <tr>
    <th height="35" scope="row">Rahmen</th>
    <td><select name="rahmen" id="rahmen">
      <option value="">None</option>
      <option value="rahmen1.png">Rahmen 1</option>
      <option value="rahmen2.png">Rahmen 2</option>
      <option value="rahmen3.png">Rahmen 3</option>
    </select></td>
  </tr>
</table>
<br>
<input type="submit" class="button" value="Signatur erstellen">
</div>
<div id="banner">
  <table width="440">
  <tr>
      <td width="30" height="110"><label>
        <input type="radio" name="banner" value="siggenbg4.png" id="RadioGroup1_00">
      </label></td>
      <td width="410"><img src="/~files/siggenbeta/preview/pre_siggibg4.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg5.png" id="RadioGroup1_0" >
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg5.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg6.png" id="RadioGroup1_1">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg6.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg7.png" id="RadioGroup1_2">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg7.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg8.png" id="RadioGroup1_3">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg8.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg9.png" id="RadioGroup1_4">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg9.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg10.png" id="RadioGroup1_5">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg10.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg11.png" id="RadioGroup1_6">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg11.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg12.png" id="RadioGroup1_7">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg12.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg13.png" id="RadioGroup1_8">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg13.jpg" alt="" width="400" height="100"></td>
    </tr>
    <tr>
      <td height="110"><label>
        <input type="radio" name="banner" value="siggenbg14.png" id="RadioGroup1_9">
      </label></td>
      <td><img src="/~files/siggenbeta/preview/pre_siggibg14.jpg" alt="" width="400" height="100"></td>
    </tr>
  </table>
  </div>
  <br>
  <input type="submit" class="button" value="Signatur erstellen">
</form>
</div>
</body>
</html>
Die absig.php ;

PHP-Code:
<?php

header
("Content-Type: image/png; charset=iso-8859-1");

// Variablen aus index.php Übergabe nehmen
$banner $_GET['banner'];
$face $_GET['face'];
$rahmen $_GET['rahmen'];
$fraktion $_GET['fraktion'];
$mdsumme $_GET['mdsumme'];

// Fixes the encoding for class
function umlWorkaround1($klasse) {
    
$klasse = (string) $klasse;
    
$klasse_out "";

    for(
$i 0$n =  strlen($klasse); $i $n$i++) {
        
$klasse_out .= "&#" ord($klasse[$i]) . ";";
        }

        return 
$klasse_out;
        }

        
$klasse rawurldecode($_GET['klasse']);
        
$klasse umlWorkaround1($klasse);

// Fixes the encoding for char
function umlWorkaround2($char) {
    
$char = (string) $char;
    
$char_out "";

    for(
$i 0$n =  strlen($char); $i $n$i++) {
        
$char_out .= "&#" ord($char[$i]) . ";";
        }

        return 
$char_out;
        }

        
$char rawurldecode($_GET['char']);
        
$char umlWorkaround2($char);
        
// Fixes the encoding for legion
function umlWorkaround3($legion) {
    
$legion = (string) $legion;
    
$legion_out "";

    for(
$i 0$n =  strlen($legion); $i $n$i++) {
        
$legion_out .= "&#" ord($legion[$i]) . ";";
        }

        return 
$legion_out;
        }

        
$legion rawurldecode($_GET['legion']);
        
$legion umlWorkaround3($legion);
        
//Erster Aufruf, preload Siggipreview
  
if($banner == "")
    {
        
$im imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/bg/siggenbg4.png"); 
    }
  else
    {
        
$im imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/bg/".$banner);
    }
    
$user_width imagettfbbox(7.50"fonts/visitor.ttf"$klasse);

        
$size_char 24;

//Position Klassenname
$x_value 5;
$y_value 95;
//Position Charaktername
$x_value_1 155;
$y_value_1 30;
//Position Legion
$x_value_3 185;
$y_value_3 55;
//Position Fraktion
$x_value_4 $user_width[2] + 22;
$y_value_4 95;
//Position Spruch
$x_value_5 221;
$y_value_5 89;

// Fonts
$klassenfont "fonts/visitor.ttf" ;
$fraktionsfont "fonts/visitor.ttf" ;


$color imagecolorallocate($im000);
$charcolor imagecolorallocate($im000);
$textcolor2 imagecolorallocate($im255255255);
$legioncolor imagecolorallocate($im000);

// imagecopy(hauptbild, zu kopierndes bild, start x axis im hauptbild, start y axis im hauptbild, 0, 0, größe vom kopierten bild breite , größe vom kopierten bild höhe ); // aion-base.de
if($face != "")
    {
    
$im2 imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/side/".$face);
    
imagecopy($im$im24400392,92); // aion-base.de
    
}
if(
$rahmen != "")
    {
    
$im2 imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/side/".$rahmen); 
    
imagecopy($im$im24400392,92); // aion-base.de
    
}

//Kontur Klasse
$fontfile $klassenfont;
$cattitle $klasse." -";
$fontsize 7.5 ;
$x $x_value;
$y $y_value;   

    
imagettftext($im$fontsize0$x-1$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y+1$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im7.50$x_value$y_value$color$klassenfont$klasse." -"); // Klassenname

//Kontur Charaktername
$fontfile "fonts/font1.ttf";
$cattitle $char;
$fontsize $size_char ;
$x $x_value_1;
$y $y_value_1;

    
imagettftext($im$fontsize0$x-1$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y+1$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y-1$textcolor2$fontfile$cattitle); 

imagettftext($im$size_char0$x_value_1$y_value_1$charcolor"fonts/font1.ttf"$char); // Charaktername

//Kontur Legion

$fontfile "fonts/font1.ttf";
$cattitle $legion;
$fontsize 15 ;
$x $x_value_3;
$y $y_value_3;

    
imagettftext($im$fontsize0$x-1$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y+1$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im150$x_value_3$y_value_3$legioncolor"fonts/font1.ttf"$legion); // Legion

//Kontur Fraktion

$fontfile $fraktionsfont;
$cattitle $fraktion;
$fontsize 7.5 ;
$x $x_value_4;
$y $y_value_4;

    
imagettftext($im$fontsize0$x-1$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y+1$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im7.50$x_value_4$y_value_4$color$fraktionsfont$fraktion); // Fraktion

// Kontur aion-base.de
$fontfile $fraktionsfont;
$cattitle "Aion-Base.de";
$fontsize 7.5 ;
$x 335;
$y 95;

    
imagettftext($im$fontsize0$x-1$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y+1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y+1$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y$textcolor2$fontfile$cattitle); 
     
    
imagettftext($im$fontsize0$x-1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im$fontsize0$x+1$y-1$textcolor2$fontfile$cattitle); 
    
imagettftext($im7.50$x$y$color$fraktionsfont"Aion-Base.de"); // aion-base.de

//erstelle Bild (Dateierstellung erstmall deaktiviert
imagepng($im);//, 'sigs/'.$mdsumme.'aion_base_sig.png',8);
imagedestroy($im);
?>
Das ganze dann mal als Live-Ansicht
http://www.aion-base.de/~files/siggenbeta/

Mit dem Bild erstellen klappt alles ganz gut ->



Nur heißt das Bild nicht erstellt12345.png sondern
Code:
http://www.aion-base.de/~files/siggenbeta/absig.php?char=Garog&klasse=Gladiator&fraktion=Elyos&legion=Eternally&face=face1.png&rahmen=rahmen1.png&banner=siggenbg21.png
Das Bild selbst als Datei zu erstellen ist auch kein Problem, dazu müsste ich nur das auskommentierte beim imagepng wegnehmen.
Code:
imagepng($im);//, 'sigs/'.$mdsumme.'aion_base_sig.png',8);
--> imagepng($im, 'sigs/'.$mdsumme.'aion_base_sig.png',8);
ich weißt jetzt nur nicht wie ich das Bild dann auf der index.php auch wieder als .png anzeigen lassen kann und das möglichst ohne das Formular zu leeren...

Ich hoffe ihr habt genug Infos, wenn nicht immer her mit den Fragen
Garog ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.09.2009, 16:49  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
ich weißt jetzt nur nicht wie ich das Bild dann auf der index.php auch wieder als .png anzeigen lassen kann und das möglichst ohne das Formular zu leeren...
Öhm, verstehe gerade das Problem nicht so ganz:
Code:
<img src="erstellt12345.png" alt="" width="" height="" />
Natürlich mit Pfad....

Zitat:
Als letzte "herrausforderung" würde ich gerne die eingegebenen Werte aus dem Formular in den Feldern behalten, bisher habe ich das Problem das nach dem Absenden die Eingabefelder und Pulldownmenüs wieder leer sind bzw auf alten Zustand stehen.
Affenformular (Standardverfahren) - PHP.de Wiki
Asipak ist offline  
Alt 20.09.2009, 17:01  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard

Dazu muss das Bild beim ersten Seitenaufruf aber auch vorhanden sein

das ist es aber nicht, es wird erst nach dem absenden des Formulars erstellt.
Das wäre noch nicht mal so schlimm, mein Problem ist nur wenn ich auf "erstellen" klicke, lädt er die Seite neu, erstellt das png Bild aber zeigt es nicht an, erst nach dem drücken von "F5"

Danke für den Link sieht danach aus als wenn es genau das ist was ich wollte

*mal schlau ließt*
Garog ist offline  
Alt 20.09.2009, 17:07  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Dann prüfe doch zunächst auf die Existenz des Bildes:

PHP-Code:
// bild existiert noch nicht oder soll erneuert werden
if (!file_exists('foo.png') || isset($_POST["rebuild"])) {
  echo 
'<img src="absig.php?param1=value1" alt="" width="" height="" />';
} else {
  echo 
'<img src="foo.png" alt="" width="" height="" />';

Kommt das deinem Problem etwas näher?
Asipak ist offline  
Alt 20.09.2009, 17:14  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard

Jaein

Das Problem habe ich in der absig.php so gelöst :

PHP-Code:
if($banner == ""
    { 
        
$im imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/bg/siggenbg4.png");  
    } 
  else 
    { 
        
$im imagecreatefrompng("http://www.aion-base.de/~files/siggenbeta/bg/".$banner); 
    } 
beim ersten Aufruf wird kein Wert "banner" mit übergeben, wenn dies der fall ist lade ich einfach das erste Banner.

Ich habe da gerade eine Idee zu deinem Ansatz, ich probiere mal kurz etwas aus feedback kommt gleich
Garog ist offline  
Alt 20.09.2009, 17:22  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard

Schade.. das gleiche Problem wie vorher...

also,

ich erstelle mit dem Code ->

PHP-Code:
<?php function RandomString($length=4,$chars='abcdefghijklmnpqrstuvwxyz'){ 
        
$result ''
        for(
$i=0;$i<$length;$i++) { $result .= $chars[mt_rand(0,strlen($chars)-1)]; } 
        return 
$result
    }  
    
$code md5(RandomString(5));
einen zufälligen String.
Dieser wird bei jedem Aufruf bzw bei jedem absenden des Formulars erneut generiert.
Das erstelle Bild heißt dann z.B.:
Code:
6471aa01f9d93c6757e375d2291208a3aion_base_sig.png
Wenn ich auf der index.php Seite nun versuche das Bild wie folgt einzubinden :

PHP-Code:
<img name="picture" src="/~files/siggenbeta/sigs/<?php echo($code."aion_base_sig.png"?>" border="0" height="100" width="400">
dann ist der Bildlink auch richtig, allerdings wird das Bild nicht angezeigt,
erst wenn ich auf das Bild gehe und "Bild neu laden" klicke wird es angezeigt.

Die ganze Seite einfach neu zu laden geht leider nicht da sonst ein neuer String erstellt wird und ich stehe vor dem gleichen Problem, Link richtig aber Bild wird nicht angezeigt. Teufelschleife ^^
Garog ist offline  
Alt 20.09.2009, 17:24  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Ja, ich glaube das Bild existiert erst nach Beendigung des Scripts (bitte verbessern falls ich mich irre).

Funktioniert es mit:

Code:
imagepng($im);
imagepng($im, 'sigs/'.$mdsumme.'aion_base_sig.png',8);
?
Asipak ist offline  
Alt 20.09.2009, 17:32  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard

geht so leider auch nicht

wobei ich glaube du meintest was anderes bzw hast mich falsch verstanden.
das bild wird angelegt und ist auch in dem ordner vorhanden nach dem absenden des formulars...

nur zeigt er es nicht als bild anschließend an. erst wenn ich nur die grafik neu lade geht es.
Garog ist offline  
Alt 20.09.2009, 20:59  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Garog Beitrag anzeigen
wobei ich glaube du meintest was anderes bzw hast mich falsch verstanden.
das bild wird angelegt und ist auch in dem ordner vorhanden nach dem absenden des formulars...
Nein, habe dich schon so verstanden, doch ich glaube, dass das Bild zur Laufzeit des Scripts noch nicht verfügbar ist, sprich, du kannst es nicht über das <img> - Tag laden. Das merkst du auch an:
Zitat:
Zitat von Garog
erst wenn ich auf das Bild gehe und "Bild neu laden" klicke wird es angezeigt.
Du könntest die Logik deines Programms etwas ändern. Ich weiß nicht genau, ob ich den Ablauf deines Programms verstanden habe, aber du könntest doch z.B. das Formular an dein Signaturscript schicken. Dieses speichert die Grafik in deinem Verzeichnis ab und leitet über PHP: header - Manual an das Formular zurück. Dabei übergibt es den Grafikcode über einen Parameter in der URL, den du dann bei
PHP-Code:
<?php echo($code."aion_base_sig.png"?>
verwenden kannst, um deine Grafik zu laden.

Vielleicht findest du auch noch eine elegantere Lösung.

Gruß
Asipak ist offline  
Alt 20.09.2009, 22:40  
Neuer Benutzer
 
Registriert seit: 20.09.2009
Beiträge: 23
PHP-Kenntnisse:
Anfänger
Garog befindet sich auf einem aufstrebenden Ast
Standard

ist auch eine schöne Idee

ich habe es jetzt so realisiert :

PHP-Code:
imagepng($im);
if (
$generate == "generate") {
imagepng($im 'sigs/'.$mdsumme.'aion_base_sig.png' 8);

so späm ich mir auch nicht den server mit vorschaubildern zu.
das eigentliche bild wird jetzt immer direkt angezeigt da es ja das php skript selbst ist.

und ist derjenige zufrieden, gibt es einen generate button. dieser erstellt die signatur und speichert diese auf dem server ab.
ebenfalls wird in zwei textfeldern der link als HTML code ausgegeben und als BBCode für Foren.

Jetzt habe ich allerdings noch ein anderen Problemchen.
Das mit den Formularfeldern...
Dank deines Links habe ich die Textfelder schon so geändert, das nun nach dem Absenden der alte wert wieder drin steht.

Auch die Pulldown/Dropdown Menüs funktionieren, wenn ich es nach dem Beispiel der verlinkten Seite mache.

Allerdings habe ich dann ein anderes Problem.
Der Name des Textfeldes wird dort als Array angegeben.

wie bekomme ich den nun den gewählten wert später bei einer

PHP-Code:
$_REQUEST[klasse
wieder herraus ???

Blöd gesagt glaube ich.

Bisher sieht das Pulldownmenü so aus

PHP-Code:
<select name="klasse" id="idklasse">
        <
option value="">Bitte w&auml;hlen</option>
        <
option value="Gladiator">Gladiator</option>
        <
option value="Templer">Templer</option>
        <
option value="Assassine">Assassine</option>
        <
option value="J&auml;ger">J&auml;ger</option>
        <
option value="Beschw&ouml;rer">Beschw&ouml;rer</option>
        <
option value="Zauberer">Zauberer</option>
        <
option value="Kantor">Kantor</option>
        <
option value="Kleriker">Kleriker</option>
      </
select
und später ermittel ich über
PHP-Code:
$_REQUEST[klasse
die auswahl des users

wenn ich es so mache wie im beispiel auf der verlinkten seite

PHP-Code:
      <?php
function selected ($key $value)
{
  if (
false === in_array($value $_POST[$key])) {
      return 
'';
  }
  return 
'selected="selected"';
}
 
?>
<select name="klasse[]" id="idklasse">
        <option value="">Bitte w&auml;hlen</option>
        <option value="Gladiator" <?php echo selected ('klasse' 'Gladiator'); ?>>Gladiator</option>
        <option value="Templer" <?php echo selected ('klasse' 'Templer'); ?>>Templer</option>
        <option value="Assassine" <?php echo selected ('klasse' 'Assassine'); ?>>Assassine</option>
        <option value="J&auml;ger" <?php echo selected ('klasse' 'J&auml;ger'); ?>>J&auml;ger</option>
        <option value="Beschw&ouml;rer" <?php echo selected ('klasse' 'Beschw&ouml;rer'); ?>>Beschw&ouml;rer</option>
        <option value="Zauberer" <?php echo selected ('klasse' 'Zauberer'); ?>>Zauberer</option>
        <option value="Kantor" <?php echo selected ('klasse' 'Kantor'); ?>>Kantor</option>
        <option value="Kleriker" <?php echo selected ('klasse' 'Kleriker'); ?>>Kleriker</option>
      </select>
dann geht das
PHP-Code:
$_REQUEST[klasse
nicht mehr
Garog ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Shortcut Menu anzeigen, beim rüberfahren mit der maus auf einem Bild! AnnyKey JavaScript, Ajax und mehr 6 22.08.2009 15:12
[Erledigt] uploadgeloadetes Bild läßt sich nicht anzeigen choice PHP Tipps 2009 2 04.08.2009 20:25
Verkleinertes Bild (Thumb) in Datenbank speichern Da-JS PHP Tipps 2006 17 21.05.2006 17:35
Bild speichern lukatsch PHP Tipps 2006 9 10.05.2006 20:52
Bild in einem Dropdownfeld anzeigen lassen PHP Tipps 2007 2 19.12.2005 18:02
Bild beim Hyperlink nicht anzeigen themonk HTML, Usability und Barrierefreiheit 7 07.10.2005 18:49
kommentar in bild speichern und mit php auslesen Marc PHP Tipps 2005-2 6 01.08.2005 15:16
Wenn Bild nicht existiert anderes anzeigen Beitragsarchiv 14 31.07.2005 11:57
GD Image Stream als Bild anzeigen PHP Tipps 2005-2 2 22.07.2005 13:10
[Erledigt] Bild aus Datenbank holen und als File speichern PHP Tipps 2005-2 2 05.07.2005 13:35
Bild (.jpg) mit Link auf Festplatte speichern PsychoEagle PHP Tipps 2005-2 11 16.06.2005 14:54
Bild nicht speichern faux PHP-Fortgeschrittene 10 22.05.2005 11:10
mit php ein Bild in einem Text anzeigen und mit css designen scheibo PHP Tipps 2005 3 15.05.2005 13:48
Bilder speichern statt anzeigen... PHP Tipps 2005 3 25.04.2005 15:22
Bild speichern das mit der GDLib erstellt wurde. Stefano PHP Tipps 2004 2 22.09.2004 11:53

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php png anzeigen, aion banner erstellen, http://www.php.de/php-einsteiger/59186-erledigt-bild-erstellen-speichern-und-gespeichertes-bild-anzeigen.html, php bild erstellen und speichern, php bild erstellen, namensbild erstellen, php png erstellen und speichern, aion signatur erstellen, php bild erzeugen und speichern, php png erzeugen und speichern, png erzeugen und speichern php, png anzeigen php, php png erstellen, php png erstellen abspeichern, bild anzeigen php, php bild generieren speichern, php als png ausgeben, text als bild ausgeben php, php bild, php bilder erzeugen und speichern

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:53 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum