Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem bei Formular

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem bei Formular

    Hallo, ich habe ein Kontakt Formular gefunden, nur das funktioniert i-wie nicht. findet jemand den Fehler?
    PHP-Code:
    <title>Kontakt</title>
    <?php

    /*******************************************/
    /* formmailer.php                          */
    /*                                         */
    /* FORMMAILER mit Reloadsperre             */
    /*                                         */
    /* von Steffen Kamper                      */
    /* erstellt für das Traumprojekt-Forum     */
    /*                                         */
    /*******************************************/


    //erstmal Variablen definieren
    $pagename="kontakt.php";
    $error=$name=$email=$message="";

    // an wen geht die Mail ?
    $empfaenger="hierkommt@meineemail.rein";

    if(isset(
    $_POST['domail'])) {
        
    // es wurde abschicken gedrückt, also erst mal die Felder holen
        
    $name=get_magic_quotes_gpc() ? stripslashes($_POST['name']) : $_POST['name'];
        
    $email=get_magic_quotes_gpc() ? stripslashes($_POST['email']) : $_POST['email'];
        
        
    //Form-Attacken verhindern (suche nach \r\n oder \n)
        
    if(strpos($name,"\r\n")>|| strpos($name,"\n")>0) {
            
    DebugAttack(substr($name,strpos($name,"\r\n")));
            
    $name="";
        }
        if(
    strpos($email,"\r\n")>|| strpos($email,"\n")>0) {
            
    DebugAttack(substr($email,strpos($email,"\r\n")));
            
    $email="";
        }
        
        
    //Message setzt sich aus allen Eingaben zusammen
        
    $message=get_magic_quotes_gpc() ? stripslashes($_POST['message']) : $_POST['message'];
        
        
    // wir setzen einen Flag, um Fehler zu registrieren
        
    $ok=true;
        
    //jetzt werden die Felder überprüft
        
    if (strlen($name)<3// der Name muss mindestens 3 Zeichen haben
        
    {
            
    $err[0]=true//Fehler merken
            
    $ok=false;    //Fehlerflag setzen
            
    $error.='Bitte geben Sie Ihren Namen an. (mindestens 3 Zeichen)<br>'// Fehlertext
        
    }
        if ( (!(
    eregi('^[a-z0-9_\.-]+@[a-z0-9_-]+\.[a-z0-9_\.-]+$',$email))) && (strlen($email)>0) || $email=="")
        {
            
    //email-Adresse ist ungültig
            
    $err[1]=true;
            
    $ok=false;
            
    $error.='Bitte kontrollieren Sie die angegebene E-Mail-Adresse.<br>';
        }
        if (
    strlen($message)<10// die Message muss mindestens 10 Zeichen haben
        
    {
            
    $err[2]=true//Fehler merken
            
    $ok=false;    //Fehlerflag setzen
            
    $error.='Bitte geben Sie eine Message von mindestens 10 Zeichen ein.<br>'// Fehlertext
        
    }
        
    // ist alles ok ? dann senden
        
    if($ok)
        {
            
    //Mail komponieren
            
    $mailheader="From: formular@domain.de\r\nX-Mailer: PHP/" phpversion(). "\r\nX-Sender-IP: ".$_SERVER['REMOTE_ADDR']."\r\nContent-Type: text/html; charset=ISO-8859-1;";
            
    $message=nl2br("Name: $name\nEmail: <a href=\"mailto:$email\">$email</a>\n<hr>$message");
            
    $subject="Webseiten-Nachricht vom ".date("d.m.Y");
            if (@
    mail($empfaenger$subject$message$mailheader)) {
                
    //Alles ok, Seite neuladen (Reloadsperre)
                
    header("Location:$pagename?success");
                
    //falls kein Header gesendet werden kann, dann mit javascript
                //echo '<script type="text/javascript">document.location.href="'.$pagename.'?success"</script>';
                
    exit;
            } else {
                
    $error='<h3>Fehler beim Mailen aufgetreten</h3>';
            }
        } else {
            
    // Fehler ausgeben
            
    $error='<h3>Fehler bei der Eingabe</h3><p class="error">'.$error.'</p>';
        }
    }
    ?>
    Die E-Mail Adresse habe ich richtig eingegeben.

  • #2
    Zitat von Potterfans
    das funktioniert i-wie nicht. findet jemand den Fehler?
    Das funktioniert genau so, wie ich mir das i-wie vorstelle: Es nimmt Platz in einer Datei ein und ich kann es im Texteditor lesen.
    [Übersetzt: a) Das ist eine Profi-Frage? b) Da musst Du einiges mehr an Beschreibung liefern]

    Kommentar


    • #3
      Wie? Ich kann da gar nichts lesen.
      Sorry habe mich im Forum vertan....
      Also, ich habe es mit .php auf meine Seite hochgeladen. Darauf wird nichts angezeigt. Ich kann nichts (außer dem Hintergrund) lesen.

      Kommentar


      • #4
        Ich meinte den Skripttext.
        Und damit meinte ich: Du wirfst uns irgendein Skript vor die Füße. "Geht nicht. Warum?" Und da ich keine Ahnung habe, was Du eigentlich erwartest und was "funktioniert nicht" bedeutet, kann ich mir aussuchen/ausdenken, was das Skript machen soll. Und ich wähle: "Das Skript soll als Quelltext mehr als 80 Zeilen in einer Datei belegen und im Texteditor lesbar sein". Und damit funktioniert das Skript wie gewünscht.

        Versuch es mal mit
        PHP-Code:
        <?php
        error_reporing
        (E_ALL);
        ini_set('display_errors'true);
        ini_set('mysql.trace_mode'true);
        var_dump($_POST);

        /*******************************************/
        /* formmailer.php                          */
        und nein, das wird das Problem nicht plötzlich lösen, weiß ich auch. Es geht darum, ob und was sich dadurch ändert.

        Kommentar


        • #5
          verschoben

          Kommentar

          Lädt...
          X