Anzeige

php - Kontaktformular umbauen

php - Kontaktformular umbauen | PSD-Tutorials.de

Erstellt von Isometric, 16.10.2012.

  1. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    Hallo zusammen,

    ich versuche gerade ein php - Kontaktformular zu verstehen und umzubauen.

    Es handelt sich um dieses hier: http://www.cb-talk.de/captcha.1.0.9_kontakt/kontakt.php

    Dabei wird in der Seite kontakt.php eine Session gestartet und ein Formular aufgebaut.

    Wenn man das Formular abschickt erfolgt die Auswertung in der Datei kontakt_ausw.php (hier startet noch mal eine Session) und dort wird dann auch die Ausgabe der Fehlermeldung gemacht.

    PHP:
    1.     if ($fehler == ""){
    2.             echo '<h3>Kontaktformular</h3>;
    3.                      
    4.            // Sessionvariablen löschen
    5.            unset($_SESSION['name']);
    6.            unset($_SESSION['email']);
    7.            unset($_SESSION['betreff']);
    8.            unset($_SESSION['nachricht']);
    9.      
    10.    } else {
    11.    echo '<h3>Kontaktformular</h3>';
    12.    echo $fehler;
    13.    echo '<p><a href="kontakt.php">zurück</a></p>';
    14.    }
    Ich hätte gerne die Ausgabe der Fehlermeldungen direkt auf der Startseite kontakt.php. Manuell kann man den ja Link zu dieser Seite betätigen, und die Eingaben dann korrigieren.

    Versucht habe ich z.B. folgendes:
    Aufruf der kontakt:php per exec.
    Das Ganze läuft auf einer Testumgebung auf einen Synology Diskstation.
     
    Zuletzt bearbeitet: 16.10.2012
    #1      
  2. Robbyn-

    Robbyn- PHP / Flex Programmierer

    Dabei seit:
    18.12.2006
    Beiträge:
    553
    Geschlecht:
    männlich
    Ort:
    Schmallenberg
    Software:
    CC, JetBrains PhpStorm 8, Flash Builder 4.7
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Vielleicht weil du hier hinten:

    PHP:
    1.  
    2. echo '<h3>Kontaktformular</h3>
    3.  
    das '; vergessen hast?!
     
    #2      
  3. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Ich hatte den Code gekürzt hier reingestellt. und zuviel gelöscht. :(
    Im Original kommen noch mehrere Zeilen und das abschliessende ";".

    Dieser Codeteil ist aber nicht die entscheidende Stelle, weil dort ausgeführt wird, wenn das Formular korrekt eingeben wurde.

    Nach dem else stehen die Anweisungen die ausgeführt werden, wenn das Formular nicht korrekt ausgeführt wird.
     
    #3      
  4. Aelfry

    Aelfry Web Developer

    Dabei seit:
    17.02.2007
    Beiträge:
    794
    Geschlecht:
    männlich
    Ort:
    Mönchengladbach
    Software:
    CC, SublimeText, Git, Sass, Gulp
    Kameratyp:
    Canon EOS 60D
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    da sehe ich zwei Möglichkeiten
    1) Auswertung auch in der kontakt.php
    2) auto. Weiterleitung nach Auswertung und Ergebnis mitschicken (zur möglichen Fehlerausgabe)

    Ich würde vermutlich Nr. 1 wählen, um sicher zu gehen, falls jemand das auto. weiterleiten deaktiviert hat.
     
    #4      
  5. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    an der Variante 1 beiße ich mir zur Zeit die Zähne aus :mad:

    wie ginge den Variante 2?
     
    #5      
  6. Aelfry

    Aelfry Web Developer

    Dabei seit:
    17.02.2007
    Beiträge:
    794
    Geschlecht:
    männlich
    Ort:
    Mönchengladbach
    Software:
    CC, SublimeText, Git, Sass, Gulp
    Kameratyp:
    Canon EOS 60D
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    wo hapert's denn genau?
    du musst ja im Prinzip einfach den "Auswertungs-Code" mit einbauen und in bestimmten Fällen (z.B. wenn auf absenden geklickt wurde) ausführen.

    im Headbereich der kontakt_ausw.php muss das hier stehen
    HTML:
    1. <meta http-equiv="refresh" content="0; URL=http://www.deine-seite.de/kontakt.php?error=1">
    mit Übergabe weiterer Infos (hier jetzt error=1) könntest du dann eine entsprechende Fehlerausgabe erzeugen.
     
    #6      
  7. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Mit Sessions habe ich bis jetzt noch gar keine Erfahrung :(

    Ich habe den php-Teil von kontakt_ausw.php in die kontakt.php kopiert und in eine Bedingung gesetzt, dass dieser Teil erst ausgeführt wird, wenn ich auf "eintragen" gedrückt habe.
    Damit startet das Script schon mal durch.
    Nach dem Drücken von "eintragen" kommt gleich die Fehlermeldung, dass schon eine Session läuft und die Variable ok in der Email-Funktion nicht gefunden wird. Außerdem wird das Captcha-Bild nicht regeneriert.
    Das Löschen des zweiten Session-Starts bringt mich auch nicht weiter. Dann ist zwar die erste Fehlermeldung weg, aber die zweite bleibt und das Captcha-Bild wird auch nicht regeneriert.


    PHP:
    1.     // Header
    2.     header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    // Datum aus Vergangenheit
    3.     header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    4.                                                          // immer geändert
    5.     header("Cache-Control: no-store, no-cache, must-revalidate");  // HTTP/1.1
    6.     header("Cache-Control: post-check=0, pre-check=0", false);
    7.     header("Pragma: no-cache");                          // HTTP/1.0
    8.    
    9.     // Alle Fehler und Notices anzeigen
    10.     error_reporting(E_ALL);
    11.    
    12.     session_start();
    13.    
    14.     $CAPTCHA_TempString="";
    15.    
    16.     // Zufallsfunktion für Zahlen und Buchstaben
    17.         function GetRandomChar() {
    18.    
    19.     // Zufallszahl generieren
    20.         mt_srand((double)microtime()*1000000);
    21.         $CAPTCHA_RandVal = mt_rand(1,2);
    22.    
    23.     // Buchstabensalat generieren jeh nachdem ob Randval 1 oder 2 ist
    24.         switch ($CAPTCHA_RandVal) {
    25.         case 1:
    26.             // Zahlen 0-9
    27.             $CAPTCHA_RandVal = mt_rand(48, 57);
    28.             break;
    29.         case 2:
    30.             // Grosse Buchstaben
    31.             $CAPTCHA_RandVal = mt_rand(65, 90);
    32.             break;
    33.         }
    34.        
    35.     // Zufallscode ausgeben
    36.         return chr($CAPTCHA_RandVal);
    37.     }
    38.    
    39.     // Zufallscode x-stellig ausgeben
    40.         for ($i = 1; $i <= 6; $i++) {
    41.            $CAPTCHA_TempString .= GetRandomChar();
    42.     }
    43.  
    44.     // Text in Sessionvariable speichern
    45.     if (isset($CAPTCHA_TempString)) {
    46.         $_SESSION["CAPTCHA_RndText"] = str_replace('I','E',str_replace('0','3',str_replace('1','S',str_replace('B','F',str_replace('O','P',str_replace('4','A',str_replace('D','K',$CAPTCHA_TempString)))))));
    47.     } else {
    48.         die("Zufallscode konnte nicht generiert werden!");
    49.     }
    50. ?>
    Danach kommt der HTML-Teil, mit dem die nächste Datei aufgerufen wird

    PHP:
    1.     // Session starten und config.php includen
    2.     session_start();
    3.     include ("config.php");
    4.    
    5.     // CaptchaCodes abfragen
    6.     $CAPTCHA_RandomText = "";
    7.     if (isset($_POST['txtCode'])){
    8.     $CAPTCHA_EnteredText = str_replace("<","",str_replace(">","",str_replace("'","",str_replace("[","",str_replace("]","",$_POST['txtCode'])))));
    9.     }
    10.     if (isset($_SESSION['CAPTCHA_RndText'])) {
    11.     $CAPTCHA_RandomText = $_SESSION['CAPTCHA_RndText'];
    12.     }
    13.  
    14.     // Eingabefelder abfragen
    15.     $_SESSION['name'] = $_POST['name'];
    16.  
    17.     // Eingaben prüfen
    18.     $fehler = "";
    19.  
    20.             if ($_SESSION['name'] == ""){
    21.             $fehler .= "<li>Name fehlt!</li>";
    22.             }
    23.             }
    24.             if ($CAPTCHA_EnteredText == $CAPTCHA_RandomText and isset($_POST['txtCode']) == true and isset($_SESSION['CAPTCHA_RndText'])){
    25.             $captcha = true;
    26.             } else {
    27.             $fehler .= "<li>Captcha fehlt oder fehlerhaft!</li>";
    28.             }
    29.     echo '<div style="border: 1px #000 solid; width: 350px; padding: 5px;">';        
    30.     if ($fehler == ""){
    31.             echo '<h3>Kontaktformular</h3>
    32.            <p>Email ist erfolgreich versendet worden!</p>';
    33.            
    34.             // Sessionvariablen löschen
    35.             unset($_SESSION['name']);
    36.             }
    37.     } else {
    38.     echo '<h3>Kontaktformular</h3>';
    39.     echo $fehler;
    40.     echo '<p><a href="kontakt.php">zurück</a></p>';
    41.     }
    42.     echo '</div>';    
    43.  
    44.     // Session unset
    45.     unset($_SESSION['CAPTCHA_RndText']);
    Ich bräuchte den Ansatz, wie ich es schaffe das Problem mit den beiden Sessions aus der Welt zu schaffen.
     
    #7      
  8. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Du scheinst bestimmte Teile hier vor dem einfügen raus zu nehmen. Es wäre besser, wenn du lieber alles postest was du kannst und wo notwendig anonymisierst. Ich kann sonst nicht einschätzen was ein echter Fehler im Code und was ein Fehler deines Rausschnippelns ist.

    Wird das Captcha erzeugt, wenn du es normal in der URL aufrufst? Wahrscheinlich ja, vorher funktionierte es ja auch.

    Was genau ist jetzt test.php? Der untere Code ist jedenfalls nicht vollständig. Wie bindest du das Captcha ein?

    Unabhängig davon noch ein Tipp: str_replace() kannst du auch mit einem Array aufrufen. Also beispielsweise:
    PHP:
    1.  
    2. <?php
    3. $CAPTCHA_EnteredText = str_replace("<","",str_replace(">","",str_replace("'","",str_replace("[","",str_replace("]","",$_POST['txtCode'])))));
    4. ?>
    5.  
    ist viel schwieriger zu lesen als
    PHP:
    1.  
    2. <?php
    3. $search = array("<",">","'","[","]");
    4. $replace = "";
    5. $CAPTCHA_EnteredText = str_replace($search, $replace, $_POST['txtCode']);
    6. ?>
    7.  
    Du kannst auch ein Array für $replace haben, dann wird das erste Element in $search mit dem ersten Element in $replace ersetzt usw. Aber das nur nebenbei.


    Duddle
     
    #8      
  9. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    @Duddle:
    erst mal vielen Dank für deinen Tipp mit dem besser lesbaren Code.
    Ich versuche so etwas dann immer umzusetzen, da es nach einiger Zeit viel einfacher ist noch mal zu verstehen, was man selber programmiert hat.

    Die Datei test.php ist die Datei, in der im Moment alles abläuft.

    Ich setze jetzt mal den kompletten Code dieser Datei hier rein.

    PHP:
    1. <?
    2. /***************************************************************************
    3.  *                                                                          *
    4.  *   copyright            : (C) 2008 Daniel Kauser                         *
    5.  *   email                : danysahne333@mail.ru                           *
    6.  *   website              : www.cb-talk.de/captcha.html                    *
    7.  *                                                                         *
    8.  *                                                                         *
    9.  *                                                                         *
    10.  ***************************************************************************/
    11.  
    12. /***************************************************************************
    13.  *                                                                         *
    14.  *   Diese Script ist gratis. Viele andere Scripte kosten viel Geld doch   *
    15.  *   ich und zum Glück auch noch ein paar andere sind gegen sowas und      *
    16.  *   bieten unsere Scripte gratis an. Deshalb löscht nicht den copyright   *
    17.  *   von mir damit wir kein Stress kriegen                                   *
    18.  *                                                                         *
    19.  ***************************************************************************/
    20.        
    21.     // Header
    22.     header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    // Datum aus Vergangenheit
    23.     header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    24.                                                          // immer geändert
    25.     header("Cache-Control: no-store, no-cache, must-revalidate");  // HTTP/1.1
    26.     header("Cache-Control: post-check=0, pre-check=0", false);
    27.     header("Pragma: no-cache");                          // HTTP/1.0
    28.    
    29.     // Alle Fehler und Notices anzeigen
    30.     error_reporting(E_ALL);
    31.    
    32.     session_start();
    33.    
    34.     $CAPTCHA_TempString="";
    35.    
    36.     // Zufallsfunktion für Zahlen und Buchstaben
    37.         function GetRandomChar() {
    38.    
    39.     // Zufallszahl generieren
    40.         mt_srand((double)microtime()*1000000);
    41.         $CAPTCHA_RandVal = mt_rand(1,2);
    42.    
    43.     // Buchstabensalat generieren jeh nachdem ob Randval 1 oder 2 ist
    44.         switch ($CAPTCHA_RandVal) {
    45.         case 1:
    46.             // Zahlen 0-9
    47.             $CAPTCHA_RandVal = mt_rand(48, 57);
    48.             break;
    49.         case 2:
    50.             // Grosse Buchstaben
    51.             $CAPTCHA_RandVal = mt_rand(65, 90);
    52.             break;
    53.         }
    54.        
    55.     // Zufallscode ausgeben
    56.         return chr($CAPTCHA_RandVal);
    57.     }
    58.    
    59.     // Zufallscode x-stellig ausgeben
    60.         for ($i = 1; $i <= 6; $i++) {
    61.            $CAPTCHA_TempString .= GetRandomChar();
    62.     }
    63.  
    64.     // Text in Sessionvariable speichern
    65.     if (isset($CAPTCHA_TempString)) {
    66.         $_SESSION["CAPTCHA_RndText"] = str_replace('I','E',str_replace('0','3',str_replace('1','S',str_replace('B','F',str_replace('O','P',str_replace('4','A',str_replace('D','K',$CAPTCHA_TempString)))))));
    67.     } else {
    68.         die("Zufallscode konnte nicht generiert werden!");
    69.     }
    70. // +++++++ in diesen Teil habe ich die komplette Originaldatei kontakt_ausw.php übernommen
    71. if(isset($_POST['eintrag']) AND $_POST['eintrag']=='eintragen')
    72. {
    73.     // Session starten und config.php includen
    74. /*/ +++++++ isession_start() habe ich auskommentiert
    75.         session_start();
    76. // */
    77.     include ("config.php");
    78.    
    79.     // CaptchaCodes abfragen
    80.     $CAPTCHA_RandomText = "";
    81.     if (isset($_POST['txtCode'])){
    82.     $CAPTCHA_EnteredText = str_replace("<","",str_replace(">","",str_replace("'","",str_replace("[","",str_replace("]","",$_POST['txtCode'])))));
    83.     }
    84.     if (isset($_SESSION['CAPTCHA_RndText'])) {
    85.     $CAPTCHA_RandomText = $_SESSION['CAPTCHA_RndText'];
    86.     }
    87.  
    88.     // Eingabefelder abfragen
    89.     $_SESSION['name'] = $_POST['name'];
    90.     $_SESSION['email'] = $_POST['email'];
    91.     $_SESSION['betreff'] = $_POST['betreff'];
    92.     $_SESSION['nachricht'] = $_POST['nachricht'];
    93.    
    94.     $email_i = $_SESSION['email'];
    95.    
    96.     // Email Funktion
    97.     function pruefe_mail($email_i) {
    98.           if(strstr($email_i, "@")) {
    99.             $email_i = explode ("@", $email_i);
    100.             if(strstr($email_i[1], ".")) $ok = TRUE;
    101.           }
    102.           return $ok;
    103.         }
    104.    
    105.     // Eingaben prüfen
    106.     $fehler = "";
    107.     if(!pruefe_mail($email_i) && !empty($email_i)) {
    108.             $fehler .= "<li>Email fehlerhaft!</li>";
    109.             }
    110.             if ($_SESSION['name'] == ""){
    111.             $fehler .= "<li>Name fehlt!</li>";
    112.             }
    113.             if ($_SESSION['email'] == ""){
    114.             $fehler .= "<li>Email fehlt!</li>";
    115.             }
    116.             if ($_SESSION['betreff'] == ""){
    117.             $fehler .= "<li>Betreff fehlt!</li>";
    118.             }
    119.             if ($_SESSION['nachricht'] == ""){
    120.             $fehler .= "<li>Nachricht fehlt!</li>";
    121.             }
    122.             if ($CAPTCHA_EnteredText == $CAPTCHA_RandomText and isset($_POST['txtCode']) == true and isset($_SESSION['CAPTCHA_RndText'])){
    123.             $captcha = true;
    124.             } else {
    125.             $fehler .= "<li>Captcha fehlt oder fehlerhaft!</li>";
    126.             }
    127.     echo '<div style="border: 1px #000 solid; width: 350px; padding: 5px;">';        
    128.     if ($fehler == ""){
    129.     // Email zumsammensetzen
    130.     $email = "From: " . $_SESSION['email'];
    131.     $nachrichtfertig = $_SESSION['name']. " schrieb: \n\n" . $_SESSION['nachricht'];
    132.     $versand = mail($empfaenger, $_SESSION['betreff'], $nachrichtfertig, $email);
    133.             if ($versand) {
    134.             echo '<h3>Kontaktformular</h3>
    135.            <p>Email ist erfolgreich versendet worden!</p>';
    136.            
    137.             // Sessionvariablen löschen
    138.             unset($_SESSION['name']);
    139.             unset($_SESSION['email']);
    140.             unset($_SESSION['betreff']);
    141.             unset($_SESSION['nachricht']);
    142.             }
    143.            
    144.     } else {
    145.     echo '<h3>Kontaktformular</h3>';
    146.     echo $fehler;
    147.     echo '<p><a href="kontakt.php">zurück</a></p>';
    148.     }
    149.     echo '</div>';    
    150.  
    151.     // Session unset
    152.     unset($_SESSION['CAPTCHA_RndText']);
    153. }
    154. ?>
    155.  
    156. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    157. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
    158. <head>
    159.     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    160.     <meta http-equiv="language" content="de" />
    161.     <title>Kontaktformular</title>
    162. </head>
    163.  
    164. <body>
    165. <div style="border: 1px #000 solid; width: 350px; padding: 5px;">
    166. <h3>Kontaktformular</h3>
    167.  
    168. <form method="post" action="test.php" name="kontakt">
    169.     <table>
    170.     <tr><td><p>Name: </p></td><td><p><input name="name" size="34" type="text" <?if (isset($_SESSION['name'])) { echo 'value="' . $_SESSION['name'] . '"'; }?>/></p></td></tr>
    171.     <tr><td><p>Email: </p></td><td><p><input name="email" size="34" type="text" <?if (isset($_SESSION['email'])) { echo 'value="' . $_SESSION['email'] . '"'; }?>/></p></td></tr>
    172.     <tr><td><p>Betreff: </p></td><td><p><input name="betreff" size="34" type="text" <?if (isset($_SESSION['betreff'])) { echo 'value="' . $_SESSION['betreff'] . '"'; }?>/></p></td></tr>
    173.     <tr><td><p>Nachricht: </p></td><td><p><textarea name="nachricht" rows="3" cols="26"><?if (isset($_SESSION['nachricht'])) { echo  $_SESSION['nachricht'] ; }?></textarea></p></td></tr>
    174.    
    175.     <tr><td> </td><td><img border="0" src="captcha_img.php?PHPSESSID=<?echo session_id();?>&ver=<?echo time();?>" alt="" /></td></tr>
    176.     <tr><td><p>Code: </p></td><td><p><input maxlength="6" name="txtCode" size="34" type="text" /></p></td></tr>
    177.     <tr><td> </td><td><p><input class="button" type="submit" name="eintrag" value="eintragen" />&nbsp;<input class="button" type="reset" name="reset" value="l&ouml;schen" /></p></td></tr>
    178.     </table>
    179.     </div>
    180. </form>
    181. </body>
    182. </html>
    183.  
    Das Script habe ich hier heruntergeladen: cb-talk.de

    und der Autor schreibt:
     
    Zuletzt bearbeitet: 17.10.2012
    #9      
  10. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Okay, das größte Problem war deine Reihenfolge. Du hast die Auswertung nach der Initialisierung. Während letzterer werden manche Dinge zurückgesetzt. Das führt dann zu Fehlern in der Auswertung. Im folgenden Code habe ich lediglich den Auswertungs-Block nach den Session-Start gesetzt, dann funktioniert das. Eine zweite Änderung ist in der Funktion pruefe_mail, in der $ok nicht korrekt initialisiert wird.
    Ansonsten ist der Code unverändert.
    PHP:
    1.  
    2. <?
    3. /***************************************************************************
    4.  *                                                                          *
    5.  *   copyright            : (C) 2008 Daniel Kauser                         *
    6.  *   email                : danysahne333@mail.ru                           *
    7.  *   website              : www.cb-talk.de/captcha.html                    *
    8.  *                                                                         *
    9.  *                                                                         *
    10.  *                                                                         *
    11.  ***************************************************************************/
    12.  
    13. /***************************************************************************
    14.  *                                                                         *
    15.  *   Diese Script ist gratis. Viele andere Scripte kosten viel Geld doch   *
    16.  *   ich und zum Glück auch noch ein paar andere sind gegen sowas und      *
    17.  *   bieten unsere Scripte gratis an. Deshalb löscht nicht den copyright   *
    18.  *   von mir damit wir kein Stress kriegen                                   *
    19.  *                                                                         *
    20.  ***************************************************************************/
    21.  
    22. // Header
    23. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    // Datum aus Vergangenheit
    24. header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    25. // immer geändert
    26. header("Cache-Control: no-store, no-cache, must-revalidate");  // HTTP/1.1
    27. header("Cache-Control: post-check=0, pre-check=0", false);
    28. header("Pragma: no-cache");                          // HTTP/1.0
    29.  
    30. // Alle Fehler und Notices anzeigen
    31.  
    32.  
    33. if(isset($_POST['eintrag']) AND $_POST['eintrag']=='eintragen')
    34. {
    35.     // Session starten und config.php includen
    36. /*/ +++++++ isession_start() habe ich auskommentiert
    37.     session_start();
    38. // */
    39. include ("config.php");
    40.  
    41. // CaptchaCodes abfragen
    42. $CAPTCHA_RandomText = "";
    43. if (isset($_POST['txtCode'])){
    44.     $CAPTCHA_EnteredText = str_replace("<","",str_replace(">","",str_replace("'","",str_replace("[","",str_replace("]","",$_POST['txtCode'])))));
    45. }
    46. if (isset($_SESSION['CAPTCHA_RndText'])) {
    47.     $CAPTCHA_RandomText = $_SESSION['CAPTCHA_RndText'];
    48. }
    49.  
    50. // Eingabefelder abfragen
    51. $_SESSION['name'] = $_POST['name'];
    52. $_SESSION['email'] = $_POST['email'];
    53. $_SESSION['betreff'] = $_POST['betreff'];
    54. $_SESSION['nachricht'] = $_POST['nachricht'];
    55.  
    56. $email_i = $_SESSION['email'];
    57.  
    58. // Email Funktion
    59. function pruefe_mail($email_i) {
    60.     $ok = FALSE;
    61.     if(strstr($email_i, "@")) {
    62.     $email_i = explode ("@", $email_i);
    63.     if(strstr($email_i[1], ".")) $ok = TRUE;
    64.     }
    65.     return $ok;
    66. }
    67.  
    68. // Eingaben prüfen
    69. $fehler = "";
    70. if(!pruefe_mail($email_i) && !empty($email_i)) {
    71.     $fehler .= "<li>Email fehlerhaft!</li>";
    72. }
    73. if ($_SESSION['name'] == ""){
    74.     $fehler .= "<li>Name fehlt!</li>";
    75. }
    76. if ($_SESSION['email'] == ""){
    77.     $fehler .= "<li>Email fehlt!</li>";
    78. }
    79. if ($_SESSION['betreff'] == ""){
    80.     $fehler .= "<li>Betreff fehlt!</li>";
    81. }
    82. if ($_SESSION['nachricht'] == ""){
    83.     $fehler .= "<li>Nachricht fehlt!</li>";
    84. }
    85. if ($CAPTCHA_EnteredText == $CAPTCHA_RandomText and isset($_POST['txtCode']) == true and isset($_SESSION['CAPTCHA_RndText'])){
    86.     $captcha = true;
    87. } else {
    88.     $fehler .= "<li>Captcha fehlt oder fehlerhaft!</li>";
    89. }
    90. echo '<div style="border: 1px #000 solid; width: 350px; padding: 5px;">';        
    91. if ($fehler == ""){
    92.     // Email zumsammensetzen
    93.     $email = "From: " . $_SESSION['email'];
    94.     $nachrichtfertig = $_SESSION['name']. " schrieb: \n\n" . $_SESSION['nachricht'];
    95.     $versand = mail($empfaenger, $_SESSION['betreff'], $nachrichtfertig, $email);
    96.     if ($versand) {
    97.     echo '<h3>Kontaktformular</h3>
    98.         <p>Email ist erfolgreich versendet worden!</p>';
    99.  
    100.     // Sessionvariablen löschen
    101.     unset($_SESSION['name']);
    102.     unset($_SESSION['email']);
    103.     unset($_SESSION['betreff']);
    104.     unset($_SESSION['nachricht']);
    105.     }
    106.  
    107. } else {
    108.     echo '<h3>Kontaktformular</h3>';
    109.     echo $fehler;
    110.     echo '<p><a href="kontakt.php">zurück</a></p>';
    111. }
    112. echo '</div>';    
    113.  
    114. // Session unset
    115. unset($_SESSION['CAPTCHA_RndText']);
    116. }
    117.  
    118. $CAPTCHA_TempString="";
    119.  
    120. // Zufallsfunktion für Zahlen und Buchstaben
    121. function GetRandomChar() {
    122.  
    123.     // Zufallszahl generieren
    124.     mt_srand((double)microtime()*1000000);
    125.     $CAPTCHA_RandVal = mt_rand(1,2);
    126.  
    127.     // Buchstabensalat generieren jeh nachdem ob Randval 1 oder 2 ist
    128.     switch ($CAPTCHA_RandVal) {
    129.     case 1:
    130.     // Zahlen 0-9
    131.     $CAPTCHA_RandVal = mt_rand(48, 57);
    132.     break;
    133.     case 2:
    134.     // Grosse Buchstaben
    135.     $CAPTCHA_RandVal = mt_rand(65, 90);
    136.     break;
    137.     }
    138.  
    139.     // Zufallscode ausgeben
    140.     return chr($CAPTCHA_RandVal);
    141. }
    142.  
    143. // Zufallscode x-stellig ausgeben
    144. for ($i = 1; $i <= 6; $i++) {
    145.     $CAPTCHA_TempString .= GetRandomChar();
    146. }
    147.  
    148. // Text in Sessionvariable speichern
    149. if (isset($CAPTCHA_TempString)) {
    150.     $_SESSION["CAPTCHA_RndText"] = str_replace('I','E',str_replace('0','3',str_replace('1','S',str_replace('B','F',str_replace('O','P',str_replace('4','A',str_replace('D','K',$CAPTCHA_TempString)))))));
    151. } else {
    152.     die("Zufallscode konnte nicht generiert werden!");
    153. }
    154. // +++++++ in diesen Teil habe ich die komplette Originaldatei kontakt_ausw.php übernommen
    155. ?>
    156.  
    157. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    158. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
    159. <head>
    160.     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    161.     <meta http-equiv="language" content="de" />
    162.     <title>Kontaktformular</title>
    163. </head>
    164.  
    165. <body>
    166. <div style="border: 1px #000 solid; width: 350px; padding: 5px;">
    167. <h3>Kontaktformular</h3>
    168.  
    169. <form method="post" action="test.php" name="kontakt">
    170.     <table>
    171.     <tr><td><p>Name: </p></td><td><p><input name="name" size="34" type="text" <?if (isset($_SESSION['name'])) { echo 'value="' . $_SESSION['name'] . '"'; }?>/></p></td></tr>
    172.     <tr><td><p>Email: </p></td><td><p><input name="email" size="34" type="text" <?if (isset($_SESSION['email'])) { echo 'value="' . $_SESSION['email'] . '"'; }?>/></p></td></tr>
    173.     <tr><td><p>Betreff: </p></td><td><p><input name="betreff" size="34" type="text" <?if (isset($_SESSION['betreff'])) { echo 'value="' . $_SESSION['betreff'] . '"'; }?>/></p></td></tr>
    174.     <tr><td><p>Nachricht: </p></td><td><p><textarea name="nachricht" rows="3" cols="26"><?if (isset($_SESSION['nachricht'])) { echo  $_SESSION['nachricht'] ; }?></textarea></p></td></tr>
    175.  
    176.     <tr><td> </td><td><img border="0" src="captcha_img.php?PHPSESSID=<?echo session_id();?>&ver=<?echo time();?>" alt="" /></td></tr>
    177.     <tr><td><p>Code: </p></td><td><p><input maxlength="6" name="txtCode" size="34" type="text" /></p></td></tr>
    178.     <tr><td> </td><td><p><input class="button" type="submit" name="eintrag" value="eintragen" />&nbsp;<input class="button" type="reset" name="reset" value="l&ouml;schen" /></p></td></tr>
    179.     </table>
    180.     </div>
    181. </form>
    182. </body>
    183. </html>
    184.  

    Duddle
     
    #10      
  11. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Super :lol:

    ich schätze mal das hätte ich nicht hinbekommen :uhm:

    dann werde ich mal weiter werkeln und das Formular weiter umbauen
     
    #11      
  12. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Den Umbau habe ich bis jetzt hin bekommen.

    Bis jetzt, da gibt es nämlich noch einen klitzekleinen :mad: Problempunkt, der sich heftig wehrt.

    Durch die Session stehen ja alle Variablen im Formular drin, auch wenn ich über eine Kontrollseite noch mal ins Formular zurückspringe, um Eingaben zu ändern.

    In dem Formular habe ich eine Vorauswahl, die ich über Radiobuttons steuern kann.

    Das funktioniert über JQuery mit diesem Codeblock:
    HTML:
    1. <script type="text/javascript">
    2. $(document).ready(function(){ // alle Codes hier zwischen werden erst geladen, wenn die Seite fertig geladen ist
    3.    
    4.     // Voreinstellungen
    5.     $('#auswahl div').hide(); // Blendet alle div mit id "auswahl" aus
    6.     $('#auswahl div#liste1').show(); // Hiermit wird div mit id "liste1" zu Beginn schon eingeblendet
    7.    
    8.     $('#vorauswahl input[type=radio]').click(function(){ // führt folgenden Code beim Klick auf ein radio-Button aus
    9.         $('#auswahl div').hide(); // Blendet wieder div mit id "auswahl" aus
    10.         $('#'+$(this).val()).show(); // Einblenden der Liste --> Radio value => div ID des einzublendenen Elements
    11.            });
    12.  
    13. });
    Durch diesen Befehl wird also auch ein Div-Container wieder ausgeblendet, der beim Abschicken des Formulares eigentlich aktiv war:
    So sieht der Formularteil aus:
    PHP:
    1. <li id="li_2" >
    2. <div id="auswahl">
    3.     <div id="liste1">
    4.     <label for="wert" ><?PHP echo $errorPicture['wert']; ?>Möglichkeit 1</label>
    5.         <select size ="1" name="wert" class="<?PHP echo $errorClass['wert']; ?>">
    6.             <option value="" <?PHP if(empty($_SESSION['wert'])) echo 'selected'; ?>>Bitte ausw&auml;hlen</option>
    7.             <option value="2" <?PHP if($_SESSION['wert'] == "2") echo 'selected'; ?>>Liste 1 - Auswahl 1</option>
    8.             <option value="1" <?PHP if($_SESSION['wert'] == "1") echo 'selected'; ?>>Liste 1 - Auswahl 2</option>
    9.         </select>
    10.     </div>
    11.    
    12.     <div id='liste2'>
    13.     <label for="wert" ><?PHP echo $errorPicture['wert']; ?>Möglichkeit 2</label>
    14.         <select size ="1" name="wert" class="<?PHP echo $errorClass['wert']; ?>">
    15.             <option value="" <?PHP if(empty($_SESSION['wert'])) echo 'selected'; ?>>Bitte ausw&auml;hlen</option>
    16.             <option value="2" <?PHP if($_SESSION['wert'] == "2") echo 'selected'; ?>>Liste 2 - Auswahl 2</option>
    17.             <option value="1" <?PHP if($_SESSION['wert'] == "1") echo 'selected'; ?>>Liste 2 - Auswahl 2</option>
    18.         </select>
    19.     </div>
    20. </div>    
    Hat jemand eine Idee, wie ich den Zustand des Formulars wieder herstellen kann, der beim Absenden vorhanden war ?
     
    Zuletzt bearbeitet: 30.10.2012
    #12      
  13. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Du meinst, du möchtest bspw. Liste 2 einblenden lassen, falls beim Abschicken diese eingeblendet war?

    Falls ja, wäre eine Lösung, einen Teil des JavaScript-Blockes auch von PHP erzeugen zu lassen und dort abhängig von Inhalten der Session eine Variable auf den gewünschten Wert zu initialisieren. Diese würde dann bestimmen, welcher Block beim ready() gezeigt wird.

    Alternativ könntest du die eingeblendeten Teile in ein Cookie schreiben und dieses im ready() auslesen. So wird das normalerweise auch gemacht (hier im Forum ebenfalls mit den Seitenleisten).


    Duddle
     
    #13      
  14. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Da hab ich vor lauter Wald das Bäumchen nicht gesehen. Die Lösung klappt schon mal.

    und wie funktioniert so was?
     
    #14      
  15. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Naja, du setzt oder liest ein Cookie und entscheidest anhand dessen ob du ein Element einblendest oder nicht. Cookies sind letztlich auch nur Daten, genauso wie Sessions.

    Wie du mit JS bzw. jQuery Cookies behandelst findest du per Google selbst.


    Duddle
     
    #15      
  16. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    So, ich habe jetzt mal mit Cookie getestet, aber da muss ich immer 2x auf Absenden drücken, damit der Keks sich ändert. :mad:

    Was mache ich falsch ?
    PHP:
    1.  
    2. <?php
    3. // Definition Variable für id_aktuell der Navigation
    4. $seite = basename($_SERVER['PHP_SELF']) ; // Seite ohne Pfad, Definition Variable für id_aktuell der Navigation
    5. $title = "Test";
    6.  
    7.  
    8. $errorFields = array('name',
    9.                     'email'
    10.                 );    
    11.  
    12.  
    13. if(isset($_POST['submit']))
    14. {
    15.     setcookie("gruppe", "", time() - 3600);
    16.     $gruppe = $_POST['gruppe'];
    17.     $_SESSION['name']         = $_POST['name'];
    18.     $_SESSION['wert']         = $_POST['wert'];
    19.     $_SESSION['wert1']         = $_POST['wert1'];
    20.     $_SESSION['wert2']         = $_POST['wert2'];
    21.     $_SESSION['email']         = $_POST['email'];
    22.     $_SESSION['gruppe']     = $gruppe;
    23.     setcookie("gruppe", $gruppe);
    24.     setcookie("wert1", $_POST['wert1']);
    25.  
    26.     $error = FALSE;
    27.     foreach($errorFields as $key => $value)
    28.     {
    29.         if(empty($_POST[$errorFields[$key]]))
    30.         {
    31.             $error = TRUE;
    32.             $errorClass[$value] = 'errorField';
    33.         }
    34.     }
    35. }
    36.  
    37. if(isset($_POST['submit']))
    38. {
    39.     if($error == TRUE)     $errorMessage = '<p><b>Achtung!</b><br>Es ist zu einem Fehler gekommen. Bitte füllen Sie die mit * markierten Pflichtfelder aus.</p>';
    40.     else
    41.     {
    42.         // Alles ist in Ordnung
    43.         // Daten können gespeichert werden
    44.     $errorMessage = '<p><b> Ihre Eingabe war erfolgreich!</p>';
    45.     // session_unset();
    46.     }
    47.            
    48. }?>
    49.  
    50. <!DOCTYPE html>
    51. <html>
    52.  
    53. <?php echo "<title>" . $title . "</title>"; ?>
    54. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    55. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script><!-- jQuery Codes einbinden -->
    56.  
    57.  
    58. <script type="text/javascript">
    59. $(document).ready(function(){ // alle Codes hier zwischen werden erst geladen, wenn die Seite fertig geladen ist
    60.    
    61.     // Voreinstellungen
    62.     $('#auswahl div').hide(); // Blendet alle div mit id "auswahl" aus
    63.     <?php if($_COOKIE['gruppe'] == "liste2") { ?>
    64.     $('#auswahl div#liste2').show(); // Hiermit wird div mit id "liste2" zu Beginn schon eingeblendet
    65.     <?php } else { ?>
    66.     $('#auswahl div#liste1').show(); // Hiermit wird div mit id "liste1" zu Beginn schon eingeblendet
    67.     <?php } ?>    
    68.     $('#vorauswahl input[type=radio]').click(function(){ // führt folgenden Code beim Klick auf ein radio-Button aus
    69.         $('#auswahl div').hide(); // Blendet wieder div mit id "auswahl" aus
    70.         $('#'+$(this).val()).show(); // Einblenden der Liste --> Radio value => div ID des einzublendenen Elements
    71.         //$('#'+$(this).val()).slideDown('slow'); // Alternativ zum Einblenden
    72.     });
    73. });
    74. </script>
    75.  
    76.  
    77. </head>
    78. <body>
    79. <div id="container">
    80.  
    81. <div id="main" style="width: 750px;">
    82. <h1>Formular</h1>
    83. <?PHP echo $errorMessage;
    84. echo "<pre>";
    85. print_r($_SESSION);
    86. print_r($_COOKIE);
    87. echo "</pre>";
    88. ?>
    89. <form  action="<?PHP echo $script; ?>" method=post>
    90. <ul>
    91.     <fieldset>
    92.     <li id="li_1" style="width: 550px;">
    93.             <div id="vorauswahl" style="display: inline;">
    94.             <label class="description" for="gruppe" >Vorauswahl: </label><br /><br />
    95.             <input type="radio" name="gruppe" value="liste1" <?PHP if(($_SESSION['gruppe'] == "liste1") OR empty($_SESSION['gruppe'])) echo 'checked="checked"'; ?> />Möglichkeit 1
    96.             <input type="radio" name="gruppe" value="liste2" <?PHP if($_SESSION['gruppe'] == "liste2") echo 'checked="checked"'; ?>/>Möglichkeit 2
    97.             <br /><br />
    98.         </div>
    99.     </li>
    100.  
    101.     <li id="li_2" >
    102.     <div id="auswahl">
    103.         <div id="liste1">
    104.         <label for="wert1" ><?PHP echo $errorPicture['wert1']; ?>Möglichkeit 1</label>
    105.             <select name="wert1" class="<?PHP echo $errorClass['wert1']; ?>">
    106.                 <option value="" <?PHP if(empty($_SESSION['wert1'])) echo 'selected'; ?>>Bitte ausw&auml;hlen</option>
    107.                 <option value="Liste 1 - Auswahl 1" <?PHP if($_SESSION['wert1'] == "Liste 1 - Auswahl 1") echo 'selected'; ?>>Liste 1 - Auswahl 1</option>
    108.                 <option value="Liste 1 - Auswahl 2" <?PHP if($_SESSION['wert1'] == "Liste 1 - Auswahl 2") echo 'selected'; ?>>Liste 1 - Auswahl 2</option>
    109.             </select>
    110.         </div>
    111.        
    112.         <div id='liste2'>
    113.         <label for="wert2" ><?PHP echo $errorPicture['wert']; ?>Möglichkeit 2</label>
    114.             <select name="wert2" class="<?PHP echo $errorClass['wert2']; ?>">
    115.                 <option value="" <?PHP if(empty($_SESSION['wert2'])) echo 'selected'; ?>>Bitte ausw&auml;hlen</option>
    116.                 <option value="Liste 2 - Auswahl 1" <?PHP if($_SESSION['wert2'] == "Liste 2 - Auswahl 1") echo 'selected'; ?>>Liste 2 - Auswahl 1</option>
    117.                 <option value="Liste 2 - Auswahl 2" <?PHP if($_SESSION['wert2'] == "Liste 2 - Auswahl 2") echo 'selected'; ?>>Liste 2 - Auswahl 2</option>
    118.             </select>
    119.         </div>
    120.  
    121.     </div>    
    122.     </li>
    123.  
    124.     </fieldset>
    125.    
    126.     <fieldset>
    127.     <legend> Addresse </legend>    
    128.     <li>
    129.             <label for="name" >Vor- u. Nachname *</label>
    130.             <input id="name" name="name" value="<?PHP echo $_SESSION['name']; ?>">
    131.     </li>
    132.  
    133.     <li>
    134.         <label for="email" >E-Mail *</label>
    135.         <input id="email" type="text" name="email" value="<?PHP echo $_SESSION['email']; ?>">
    136.     </li>
    137.  
    138.     </li>
    139.     <input name="submit" type="submit" value="Absenden" class="button">
    140.     </fieldset>
    141. </ul>
    142.  
    143.  
    144. </form>
    145.  
    146. </div> <!-- Ende: main -->
    147.  
    148. </div><!-- Ende container -->
    149. </body>
    150. </html>
     
    Zuletzt bearbeitet: 31.10.2012
    #16      
  17. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Nein, du sollst mit JS oder jQuery den Cookie schreiben. Das ist völlig unabhängig von PHP. Dann musst du nur folgende Ereignisse behandeln:
    • Seite geladen: falls kein Cookie gesetzt ist, Standard-Gruppe einblenden. Ansonsten das Cookie auslesen und diese Gruppe einblenden
    • Gruppe wird geändert: Cookie setzen und die gewählte Gruppe reinschreiben sowie einblenden
    Das war es schon.

    Edit: das was du jetzt machst ist eine Mischung aus Lösungsansatz 1 und 2.


    Duddle
     
    #17      
  18. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Der Einbau der jQuery-Cookies stockt ein bisschen.

    Ich habe aber ein neues Problem:
    das Kontaktformularscript funktioniert auf einem Webserver nicht:

    das Captcha-Bild wird nicht angezeigt :mad:

    Hat jemand eine Idee, an was das liegen könnte?
    Der Webserver läuft auf php 5.3, lokal habe ich auf einer Diskstation die gleiche php-Version. Auf einem Server mit php 5.2 läuft das Script problemlos.

    Gibt es vielleicht im diesem Codeteil irgendeine Stelle, die bei PHP 5.3 zu Problemen führen kann, bzw. für die eine bestimmte Konfiguration erforderlich ist?
    PHP:
    1.     // Header
    2.     header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    // Datum aus Vergangenheit
    3.     header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    4.                                                          // immer geändert
    5.     header("Cache-Control: no-store, no-cache, must-revalidate");  // HTTP/1.1
    6.     header("Cache-Control: post-check=0, pre-check=0", false);
    7.     header("Pragma: no-cache");                          // HTTP/1.0
     
    #18      
  19. Wellenbrecher1963

    Wellenbrecher1963 Aktives Mitglied

    Dabei seit:
    13.06.2012
    Beiträge:
    378
    Geschlecht:
    männlich
    Ort:
    Freiberg
    Software:
    Adobe Cloud CC 2017+ (Ae,Pr,Ps,Dw,Au,An,Ch), Cinema4D, Element 3D, Final Cut Studio, Shake4, Reason3
    Kameratyp:
    iPhone 6, Sony DSC-RX 10 III 4K, Sony Alpha A57, Panasonic HVX200 / 3D HDC-SDT750 / AG-HPX610EJF
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    vielleicht ist die gd2 Bibliothek nicht aktiviert und im Apache 2 eingebaut? Was für eine Fehlermeldung bekommst Du? Wenn die gd fehlt, bekommt man eigentlich eine Fehlermeldung zurück, in der Art: "Grafik konnte nicht erstellt werden". Wenn er die Grafik nicht laden kann, kommt der 404 Fehler.

    Hast Du schon mal in die Logs vom Apache geschaut, was da der PHP Compiler so ausplaudert? In der Regel steht da ganz genau drinnen, was Apache so anmault. In der Regel dürfte es die error.log Datei sein. Müßte eigentlich auf Linux Systemen unter /var/log/apache2/ zu finden sein. Bei Windowsservern kenn ich mich nicht aus, aber da muss es ja auch ein Sub geben, in der der Apache oder IIP (oder wie der jetzt unter neuem System nun auch wieder heißt) schreibt.

    so long,
    Sylvio
     
    #19      
  20. Isometric

    Isometric Powerproster

    Dabei seit:
    14.04.2009
    Beiträge:
    153
    Geschlecht:
    männlich
    php - Kontaktformular umbauen
    AW: php - Kontaktformular umbauen

    Hi Sylvio,

    der Hinweis mit der gd2 Bibliothek erscheint mir plausibel.

    Das Script läuft ja eigentlich problemlos durch. Und in manchen Browsern sieht man an Stelle der Grafik ein Symbol, oder einen senkrechten Strich, wenn ich border für das img aktiviere.

    Ich schau mal, ob ich an die Logs drankomme. Ansonsten ist das ein guter Ansatz für den Provider, wo der suchen muss.
     
    #20      
x
×
×