kostenloser Webspace werbefrei: lima-city


Kontaktformular mit Bestätigung

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    m****s

    Hey kann mir jemand ein php kontakt formular coden mit einer kleinen sendebestätigung auf der gleichen seite. wäre schön wenn die sendebestätigung nur kurz ca. 5sek auf leuchtet und dann wieder verschindet ist soetwas möglich ?

    wäre euch sehr dankbar
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. webdesignerin

    Kostenloser Webspace von webdesignerin

    webdesignerin hat kostenlosen Webspace.

    Hallo! :wave:

    Also coden wird Dir hier wohl kaum einer was, :wink: zumal wir ja auch nicht wissen, wie genau Dein Formular aussehen soll. Abgesehen davon solltest Du Dich erstmal durch die Tutorials von Lima City lesen und dann welche im Internet suchen. Wenn Du dann den Code für ein Formular gefunden hast, brauchst Du nur nochabändern und auf eine Seite weiterleiten, wenn die Mitteilung erfolgreich abgeschickt wurde oder eben nicht. Das kannst Du mit dem meta Tag refresh machen. Hier ein Beispiel meines Kontakformulars - ohne Weiterleitung nach 5 Sekunden, aber mit Sendebestätigung:


    <?php $Empfaenger = "DeineMailadresse@Anbieter.de";
    
    if($_REQUEST['Send'])
    {
    if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht']))
    {
    echo"Bitte gehen Sie<a href=\"javascript:history.back();\">zur&uuml;ck</a> und f&uuml;llen Sie <u>alle</u> Felder aus!";
    }
    else
    {
    $Mailbetreff = "Anfrage ";
    $Mailbetreff .= $_REQUEST['Betreff'];
    
    $Trenner = md5(uniqid(time()));
    
    $Header = "From: ".$_REQUEST['Email'];
    $Header .= "\n";
    $Header .= "MIME-Version: 1.0";
    $Header .= "\n";
    $Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
    $Header .= "\n\n";
    $Header .= "This is a multi-part message in MIME format";
    $Header .= "\n";
    $Header .= "--$Trenner";
    $Header .= "\n";
    $Header .= "Content-Type: text/plain";
    $Header .= "\n";
    $Header .= "Content-Transfer-Encoding: 8bit";
    $Header .= "\n\n";
    $Header .= "Sie haben folgende Nachricht erhalten: \n\n";
    
    while(list($Formularfeld, $Wert) = each($_REQUEST))
    {
    if($Formularfeld != "Send" && $Formularfeld != "Anhang")
    {
    $Header .= $Formularfeld.": ".$Wert."\n";
    }
    }
    
    $Header .= "\nDatum/Zeit: ";
    $Header .= date("d.m.Y H:i:s");
    $Header .= "\n";
    $Header .= "--$Trenner";
    $Header .= "\n";
    $Header .= "Content-Type: ";
    $Header .= "; name=";
    $Header .= "\n";
    $Header .= "Content-Transfer-Encoding: base64";
    $Header .= "\n";
    $Header .= "Content-Disposition: attachment; filename=";
    $Header .= "\n\n";
    $Header .= chunk_split(base64_encode($Dateiinhalt));
    $Header .= "\n";
    $Header .= "--$Trenner--";
    
    mail($Empfaenger, $Mailbetreff, "", $Header);
    echo"Vielen Dank f&uuml;r Ihre eMail! Sollten Sie innerhalb von 24 Stunden keine Antwort erhalten haben, schicken Sie das Formular bitte erneut ab.";
    }
    }
    else
    {
    ?>
          <table border="0" cellpadding="1" cellspacing="2">
            <form action="<?php echo$_SERVER['PHP_SELF']; ?>"
     enctype="multipart/form-data" method="post">
              <tbody>
                <tr>
                  <td><font-size="1">Name:</font></td>
                  <td><input name="Name" size="15"
     type="text"></td>
                </tr>
                <tr>
                  <td><font-size="1">E-Mail:</font></td>
                  <td><input name="Email" size="15"
     type="text"></td>
                </tr>
                <tr>
                  <td><font-size="1">Betreff:</font></td>
                  <td>
                  <select name="Betreff" size="1">
                  <option>Bitte w&auml;hlen...</option>
                  <option>Frage</option>
                  <option>Beschwerde</option>
                  <option>Sonstiges</option>
                  </select>
                  </td>
                </tr>
                <tr>
                  <td><font-size="1">Nachricht:</font></td>
                  <td><textarea cols="15" name="Nachricht"
     rows="5">Ihre Nachricht</textarea></td>
                </tr>
    
                <tr>
                  <td colspan="2" align="center"><input
     name="Send" value="Abschicken" type="submit"> <input
     name="Reset" value="L&ouml;schen" type="reset"></td>
                </tr>
              </tbody>
            </form>
          </table>
    <?php }
    
    ?>



    Liebe Grüße,
    Webdesigneirn :angel:
  4. s****o

    also $_REQUEST['Email'] direkt in den Header übergeben ist doch ziemlich gefährlich,
    da könnte man CC oder BCC direkt einschleusen.

    Würde noch eine Abfrage mit folgendem Befehl einbauen:
    eregi ("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$", $_REQUEST['Email])
  5. Wenn du die Meldung nur 5 sekunden haben möchtest würde ich dir empfehlen dabei JavaScript (z.B. jQuery) zu
    nutzen um diesen DIV nach 5sek. ausbelnden zu lassen.
    Per PHP machst du halt dann dein normales Formular welches auf seine eigene Seite verweist.
    Dabei würde ich dir jetzt vorschlagen mal ein paar Tutorials zu PHP zu lesen.
  6. Autor dieses Themas

    m****s

    Jo danke hat mir nicht weitergeholfen habe selber etwas gutes gefunden für alle die das gleiche gebrauchen können:
    http://www.isthisablog.com/2008/01/04/ajax-contact-form-quick-install/

    Edit by krapfen: Damit closed.

    Beitrag zuletzt geändert: 12.1.2010 20:41:10 von karpfen
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!