Ergebnis 1 bis 9 von 9

Thema: Formular sofort absenden mit php

  1. #1
    Teeny
    Registriert seit
    18.03.2008
    Ort
    Handorf-Langenberg
    Beiträge
    23
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Formular sofort absenden mit php

    Hallo!
    Ich möchte gern dieses Formular in meine Webseite einbauen, nur möchte ich, dass das Formular sofort an meine E-Mail Adresse gesendet wird und dies nicht manuell (mit Popup von Outlook) möglich ist.
    Wenn ich die Unimailer-Datei
    PHP-Code:
    <?php

    ### Konfiguration ###

    # An welche Adresse sollen die Mails gesendet werden?
    $strEmpfaenger 'christian.92@web.de';

    # Welchen Betreff sollen die Mails erhalten?
    $strSubject    'Gästebuch';

    # Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
    $strReturnhtml 'link7.html';

    # Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
    $strDelimiter  ":\t";

    ### Ende Konfiguration ###

    if($_POST)
    {
     
    $strMailtext "";

     while(list(
    $strName,$value) = each($_POST))
     {
      if(
    is_array($value))
      {
       foreach(
    $value as $value_array)
       {
        
    $strMailtext .= $strName.$strDelimiter.$value_array."\n";
       }
      }
      else
      {
       
    $strMailtext .= $strName.$strDelimiter.$value."\n";
      }
     }

     if(
    get_magic_quotes_gpc())
     {
      
    $strMailtext stripslashes($strMailtext);
     }

     
    mail($strEmpfaenger$strSubject$strMailtext"From: ".$strFrom)
      or die(
    "Die Mail konnte nicht versendet werden.");
     
    header("Location: $strReturnhtml");
     exit;
    }

    ?>
    von meiner anderen Homepage in den Quellcode des Formulars bei "funtion action=" eintrage funktioniert die Überprüfung nicht und das Formular wird nich gesendet. Ebenfalls Fehlerhaft ist, dass der beim klicken auf Absenden die php-Datei öffnet anstatt des im Quellcode angegebenen link7.
    Ich hoffe mir kann einer helfen wie ich es richtig hinbekomme.
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Glück auf!

  2. #2
    König(in) Avatar von Grevas
    Registriert seit
    20.04.2009
    Ort
    In meiner Wohnung.
    Alter
    30
    Beiträge
    1.039
    Danke
    0
    Bekam 5 mal "Danke" in 5 Postings

    Standard AW: Formular sofort absenden mit php

    Den Rest bräuchte man noch, sprich dein Formular.

    aber schonmal:
    1. "function action=" sag ich erstmal "hä?"
    2. Was für eine Überprüfung? Ich seh dort keine, außer ob Daten per POST gesendet werden.
    3. Was meinst du damit, wenn du sagst, dass die php-Datei geöffnet wird? Fals es sein sollte, dass du dann den php quellcode sehen kannst, dann solltest du den Dateityp auch zu PHP ändern. Fals der Typ richtig ist, unterstützt der Server kein PHP bzw. ist bei dir nicht freigeschaltet.

  3. #3
    Teeny
    Themenstarter

    Registriert seit
    18.03.2008
    Ort
    Handorf-Langenberg
    Beiträge
    23
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Formular sofort absenden mit php

    1. Oh das sollte natürlich "form action" heißen
    2. In dem Quellcode des Formulares, der hier nochmal zu sehen ist
    Code:
    ----------------------------------------------------------
    im Headbereich einfügen
    ----------------------------------------------------------
    
    
    
    <script type="text/javascript" language="JavaScript">
    <!--
    
    
    // Zufallsaufgabe
    var now = new Date();
    var sec = now.getSeconds();
    var min = now.getMinutes();
    var zufallszahl01 = sec % 10;
    zufallszahl01 +=1;
    var zufallszahl02 = min % 10;
    zufallszahl02 +=1;
    
    function Schutz01() {
    document.write(zufallszahl01 + " + " + zufallszahl02 + " = ");
    }
    
    
    
    
    // Anfang Prüfungen
    
    function Pruefen01()
    {
    
    //:: anfang Prüfung email
    if(document.vorlage01.email.value == "") {
    alert("Bitte Ihre Emailadresse eintragen!");
    document.vorlage01.email.focus();
    return false;
    }
    if(document.vorlage01.email.value.indexOf('@') == -1 || document.vorlage01.email.value.indexOf('.') == -1)
    {
    alert("Die Emailadresse ist ungültig!");
    document.vorlage01.email.focus();
    return false;
    }
    //  :: ende Prüfung email
    
    
    
    //:: anfang Prüfung nachricht
    if(document.vorlage01.nachricht.value == "") {
    alert("Bitte Text eintragen!");
    document.vorlage01.nachricht.focus();
    return false;
    }
    //:: ende Prüfung nachricht
    
    
    //:: Prüfung Code
    var Ergebnis = zufallszahl01 + zufallszahl02;
    var Eintrag = document.getElementById("antwort01").value;
    
    if(Ergebnis != Eintrag)
    {
    alert("CAPTCHA-Eintrag nicht korrekt!");
    document.getElementById("antwort01").value = "";
    document.getElementById("antwort01").focus();
    return false;
    }
    
    }
    // ende Prüfungen
    
    
    //-->
    </script>
    
    
    <!-- CSS-Formatiereungen -->
    
    <style type="text/css">
    <!--
    
    .kurz {
    font-family:Arial,sans-serif;
    font-size:12px;
    color: #5F5F5F;
    background-color: #FAFAFA;
    border: 1px solid #7F9DB9;
    width:50px;
    height:20px;
    line-height:130%;
    text-align:center;
    }
    
    input,textarea {
    font-family:Arial,sans-serif;
    font-size:12px;
    border: 1px solid #AFAFAF;
    background-color: #FAFAFA;
    width:250px;
    }
    
    .butt {
    cursor:pointer;
    color: #5F5F5F;
    background-color: #FAFAFA;
    width:100px;
    }
    
    -->
    </style>
    
    
    
    <script type="text/javascript" language="JavaScript">
    <!--
    
    
    // Zufallsaufgabe
    var now = new Date();
    var sec = now.getSeconds();
    var min = now.getMinutes();
    var zufallszahl01 = sec % 10;
    zufallszahl01 +=1;
    var zufallszahl02 = min % 10;
    zufallszahl02 +=1;
    
    function Schutz01() {
    document.write(zufallszahl01 + " + " + zufallszahl02 + " = ");
    }
    
    
    
    
    // Anfang Prüfungen
    
    function Pruefen()
    {
    
    //:: anfang Prüfung email
    if(document.vorlage01.email.value == "") {
    alert("Bitte Ihre Emailadresse eintragen!");
    document.vorlage01.email.focus();
    return false;
    }
    if(document.vorlage01.email.value.indexOf('@') == -1 || document.vorlage01.email.value.indexOf('.') == -1)
    {
    alert("Die Emailadresse ist ungültig!");
    document.vorlage01.email.focus();
    return false;
    }
    //  :: ende Prüfung email
    
    
    
    //:: anfang Prüfung nachricht
    if(document.vorlage01.nachricht.value == "") {
    alert("Bitte Text eintragen!");
    document.vorlage01.nachricht.focus();
    return false;
    }
    //:: ende Prüfung nachricht
    
    
    //:: Prüfung Code
    var Ergebnis = zufallszahl01 + zufallszahl02;
    var Eintrag = document.getElementById("antwort01").value;
    
    if(Ergebnis != Eintrag)
    {
    alert("CAPTCHA-Eintrag nicht korrekt!");
    document.getElementById("antwort01").value = "";
    document.getElementById("antwort01").focus();
    return false;
    }
    
    }
    // ende Prüfungen
    
    
    //-->
    </script>
    
    
    
    
    ----------------------------------------------------------
    im Body-Bereich
    ----------------------------------------------------------
    
    
    
    
    
    <br>
    
    <!-- hier beginnt das Formular -->
    
    <script type="text/javascript" language="JavaScript">
    <!--
    document.write('<form action="mailto:JuppZupp');
    document.write('@');
    document.write('web.de"');
    document.write(' name="vorlage01" method="post" onSubmit="return Pruefen01();" enctype="text/plain">');
    //-->
    </script>
    
    <!-- Anfang umschließende Tabelle mit Kopfzeile -->
    <table style="border:1px solid #C8D1D2" bgcolor="#FFFFFF" width="400" border="0" cellspacing="0" cellpadding="5">
    <tr><td bgcolor="#E9E9EF"><span style="font-weight:bold;color:#8F8F8F;">&nbsp;Kontaktformular 01-A</span></td></tr>
    
    <tr><td align="center">
    <br>
    
    <table border="0" cellspacing="0" cellpadding="6">
    
    <tr>
    <td>Vorname:</td>
    <td><input type="text" size="20" name="vname" value=""></td>
    </tr>
    
    <tr>
    <td>Nachname:</td>
    <td><input type="text" size="20" name="nname" value=""></td>
    </tr>
    
    <tr>
    <td>E-Mail:</td>
    <td><input style="background-color:#FFE6FF" onFocus="this.style.background='#FFFFFF';" type="text" size="20" name="email" value=""></td>
    </tr>
    
    <tr>
    <td valign="top">Nachricht:</td>
    <td><textarea style="background-color:#FFE6FF" onFocus="this.style.background='#FFFFFF';" name="nachricht" cols="20" rows="6"></textarea></td>
    </tr>
    
    <tr>
    <td>
    <script type="text/javascript" language="JavaScript">
    <!--
    Schutz01()
    //-->
    </script>
    </td>
    
    <td valign="top"><input style="background-color:#FFE6FF" class="kurz" onFocus="this.style.background='#FFFFFF';" type="text" id="antwort01" size="50" maxlength="3" value=""> &nbsp;Captcha eintragen
    </td>
    </tr>
    
    <tr>
    <td>&nbsp;</td>
    <td><br><input class="butt" type="submit" value=" senden"></td>
    </tr></table>
    </td></tr></table>
    <!-- ende umschließende Tabelle -->
    
    </form>
    <!-- hier endet das Formular -->
    
    <br><br>
    
    
    
    
    
    
    <br><br>
    steht ja, dass erst überprüft werden soll ob alle Pflichtfelder ausgefüllt wurden und ob die Sicherheitsabfrage korrekt ausgefüllt wurde. Wenn ich aber anstatt in der form action einer E-mail Adresse den den Link der php Datei einfüge( was ja theoretisch geht), wird die Überprüfung nicht vollzogen.
    3. Die php Datei ist die selbe, die ich auch schon für ein anderes Formular erfolgreich verwende, also kann sie nicht falsch oder unerkenntlich sein.
    Normalerweise sollte ja bei Klicken auf Senden ein Danke-Link erscheinen aber in diesem Fall kommt man direkt auf die php Datei.
    Glück auf!

  4. #4
    König(in) Avatar von Grevas
    Registriert seit
    20.04.2009
    Ort
    In meiner Wohnung.
    Alter
    30
    Beiträge
    1.039
    Danke
    0
    Bekam 5 mal "Danke" in 5 Postings

    Standard AW: Formular sofort absenden mit php

    blöd gefragt, hast du den Teil hier auch entfernt?

    HTML-Code:
    document.write('@');
    document.write('web.de"');
    Bei mir Funktionierts nämlich:
    HTML-Code:
    <!-- hier beginnt das Formular -->
    
    <script type="text/javascript" language="JavaScript">
    <!--
    document.write('<form action="test2.html"');
    document.write(' name="vorlage01" method="post" onSubmit="return Pruefen01();" enctype="text/plain">');
    Und man soll ja auf die PHP Datei kommen, wenn die Umleitung net funzt ist es ne andere Geschichte.
    Die Überprüfung tut bei mir aber aufjedenfall und die action wird richtig ausgeführt.

  5. #5
    Teeny
    Themenstarter

    Registriert seit
    18.03.2008
    Ort
    Handorf-Langenberg
    Beiträge
    23
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Formular sofort absenden mit php

    Wenn ich das so mache geht es bei mir immer noch nicht. Anstatt "test2.html" will der nämlich "test2.html%20name=" öffnen.
    Glück auf!

  6. #6
    König(in) Avatar von Grevas
    Registriert seit
    20.04.2009
    Ort
    In meiner Wohnung.
    Alter
    30
    Beiträge
    1.039
    Danke
    0
    Bekam 5 mal "Danke" in 5 Postings

    Standard AW: Formular sofort absenden mit php

    "Wenn ich es so mache" ist gut, du machst es nämlich nicht so.
    HTML-Code:
    '<form action="test2.html"'
    Du hast das Anführungszeichen weggelassen *sigh*

  7. #7
    Teeny
    Themenstarter

    Registriert seit
    18.03.2008
    Ort
    Handorf-Langenberg
    Beiträge
    23
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Formular sofort absenden mit php

    Stimmt
    Jetzt funktioniert das schonmal, danke!
    Nur warum will meine Mail-php Datei dann nicht das Formular dann abschicken? Am Code habe ich nichts verändert, bei einem anderen, einfachen Formular schickt er das Formular weg, nur nicht hier.
    Hier mal der Code für das Formular bei dem der unimailer funktionert, vielleicht lässt sich da ja das Problem erkennen:
    Code:
    <form action="unimailer.php" method="post">
    	Name:<input name="Name" type="text" style="width: 150px"> E-Mail:<input name="Mail" style="width: 153px" type="text"><br>
    	Nachricht:<textarea name="Nachricht" cols="39" rows="5"></textarea><br>
    	<input name="Submit1" type="submit" value="Abschicken" ><input name="Button1" type="reset" value="Zurücksetzen"></form>
    Glück auf!

  8. #8
    König(in) Avatar von Grevas
    Registriert seit
    20.04.2009
    Ort
    In meiner Wohnung.
    Alter
    30
    Beiträge
    1.039
    Danke
    0
    Bekam 5 mal "Danke" in 5 Postings

    Standard AW: Formular sofort absenden mit php

    Ehrlichgesagt, seh ich spontan nichts. Musst jetzt wohl erstmal selbst ran, sprich debugen.

    Lass dir in der PHP den Inhalt von $_POST ausgeben. Ich weiß nicht wie das Ergebniss bei dir aussieht. Bleibt die Seite weiß -> Weiterleitung fehlgeschlagen, wird die eMail garnicht verschickt (error meldung) ?

    Ohne eine Eingrenzung des Bereichs wo der Fehler ist, kann / will ich dir nicht weiterhelfen , ist ein wenig viel Quellcode zum durchlesen und durchdenken. Brauch da ein paar Infos die du selbst heranschaffen musst.

    Aber ist ja auch schon spät und vllt findet sich jemand der was sieht.

  9. #9
    Teeny
    Themenstarter

    Registriert seit
    18.03.2008
    Ort
    Handorf-Langenberg
    Beiträge
    23
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Formular sofort absenden mit php

    Mhmm wenn ich auf senden klicke kommt einfach nur eine weiße, leere Seite.
    Aber ich habe jetzt ein ganz anderen Formmailer genommen und nun funktioniert es, wo da der Fehler war, weiß ich aber nicht. Hauptsache das funktionier jetzt
    Glück auf!

Ähnliche Themen

  1. Variable aus Formular vor dem Absenden verfügbar machen
    Von Morrers im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 29.04.2007, 13:52
  2. perl script zum absenden von formularen
    Von steffi2 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 5
    Letzter Beitrag: 12.04.2007, 14:16
  3. Formular ( logout ) absenden, gleichzeitig Neue Seite laden
    Von D-Night im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 10.03.2007, 22:10
  4. Formular zum Absenden in PHP
    Von SHADOW im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 05.02.2006, 17:09
  5. Formular zum absenden in HTML (bitte überprüfen!)
    Von SHADOW im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 04.01.2006, 17:54

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •