Kontaktformular

  • Hallo, habe eine Frage:

    Habe eine bestehende Homepage und möchte dort ein Kontaktformular einfügen. Leider unterstützt dieser server kein PHP. jetzt habe ich einen freehost gefunden der PHP anbietet. besteht die möglichkeit nur das PHP skript (mail.php) auf diesen zu stellen? das kontaktformular.htm möchte ich gerne auf der alten (bestehenden) homepage haben. danke für tipps.

  • hallo, ich habe im html-file die adresse für das PHP-file angegeben. funkioniert. nur leider speichert er keine daten für die mail. muss ich den php-skript auch eine adresse angeben?

    danke

  • Hallo, anbei meine files

    formular.htm

    <form method="post" action="http://xxxxxx.funpic.de/mailer.php">
    <table width="300" border="1" bordercolor=black cellspacing="0" cellpadding="0" height=250>
    <tr>
    <td valign=top>Name:</td>
    <td><input type="text" name="absender_name"></td>
    </tr>
    <tr>
    <td colspan=2 height=17></td>
    </tr>
    <tr>
    <td valign=top>Email:</td>
    <td valign=top><input type="text" name="absender_email"></td>
    </tr>
    <tr>
    <td colspan=2 height=17></td>
    </tr>
    <tr>
    <td valign=top>Homepage:</td>
    <td valign=top><input type="text" name="absender_homepage" value="http://"> </td>
    </tr>
    <tr>
    <td colspan=2 height=17></td>
    </tr>
    <tr>
    <td valign=top>Nachricht:</td>
    <td valign=top><textarea rows=4 cols=20 name="absender_nachricht"></textarea></td>
    </tr>
    <tr>
    <td colspan=2 height=17></td>
    </tr>
    <tr>
    <td></td>
    <td valign=top><input type="submit" name="submit" value="Abschicken"> <input type="reset" value="Zur&uuml;cksetzen"></td>
    </tr>
    </table>
    </form>


    mailer.php


    <?php


    /* überprüfung ob der verschicken button gedrückt wurde */

    if(isset($_POST['submit'])) {

    $check_zero = true;

    } else {

    $check_zero = false;

    }


    /* überprüfung ob $absender_name ausgefüllt wurde */

    if(!empty($_POST['absender_name'])) {

    $check_one = true;

    } else {

    $check_one = false;

    }


    /* überprüfung ob $absender_email ausgefüllt wurde und ob die Email richtig ist */

    if(!empty($_POST['absender_email'])) {

    $check_two = true;

    } else {

    $check_two = false;

    }

    $absender_email = preg_replace("#[\;\#\n\r\*\'\'<>&\%\!\(\)\{\}\[\]\?\\/\s]#","",$_POST['absender_email']);

    if(!preg_match("/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,4})(\]?)$/",$absender_email)<1) {

    $check_two_alpha = true;

    } else {

    $check_two_alpha = false;

    }


    /* überprüfung ob $absender_nachricht ausgefüllt wurde */

    if(!empty($_POST['absender_nachricht'])) {

    $check_three = true;

    } else {

    $check_three = false;

    }

    /* überprüfungen der wichtigen eingaben */

    if($check_zero == 0 or $check_one == 0 or $check_two == 0 or $check_two_alpha == 0 or $check_three == 0) {

    echo "Eines der Pflichtfelder wurde entweder nicht Ordnungsgemäß ausgefüllt oder Sie haben eins davon vergessen auzufüllen!\n
    Bitte kehren Sie Zurück und überprüfen Sie ihre Eingaben!";
    exit;
    }

    /* es werden ein paar sachen definiert */

    $email_empfaenger = 'xxx@yyy.zz';
    $email_betreff = 'kontakt';

    $absender_name = $_POST['absender_name'];
    $absender_email = $absender_email;
    $absender_nachricht = $_POST['absender_nachricht'];

    /* gestaltung der email die an uns geht */

    $nachricht = "
    Diese Email wurde Verfasst von $absender_name <$absender_email>

    $absender_nachricht
    ";

    if(mail($email_empfaenger,$email_betreff,$nachricht,"From: $absender_email")) {

    echo "Vielen Dank, Ihr Nachricht wurde Erfolgreich Versand!\nIch werde so Schnell wie möglich darauf Antworten!";

    } else {

    echo "Es Tut uns Leid aber Ihre Nachricht konnte nicht Versand werden!\nVersuchen Sie es doch nocheinmal!\n\n
    Sie können auch Ihren Email Client Benutzen\n\nMeine Email: $email_empfaenger";

    }

    ?>


    danke für deine hilfe

  • Zitat von Ronald

    1. Welchen Daten sollen wo gespeichert werden?
    2. Kommt eine Mail bei dir an, wenn du das Formular ausprobierst?

    Ich habe ein bei mir vorhandenes Script ein wenig auf deine Anforderungen angepaßt, speicher das mal als z.B. "kontakt.php" auf deinem funpic-Webspace:[code]<?PHP
    extract($_POST);
    if(!$hp) $hp = "http://";

    $pm = "/^. \@(\[?)[a-zA-Z0-9\-\.] \.([a-zA-Z]{2,4}|[0-9]{1,4})(\]?)$/";
    $email = preg_replace("#[\;\#\n\r\*\'\"<>

  • hallo, vielen dank für deine hilfe.

    ich habe jetzt folgendes problem:

    ich gebe die daten auf dem html-file ein und wenn ich den senden button drücke erscheint gfolgende meldung: sie habe nicht alle daten ausgefüllt - kehrten sie zurück. eine e-mail wird nicht versendet. daher habe ich angenommen, dass das php file daten speichern muss - bin mir aber nicht sicher.

    kannst du mir vielleicht noch einen tipp geben?

    danke

  • Ich sehe grade, daß es mein vorheriges Posting völlig zerrissen hat.
    Hier noch einmal das Script:

    Dieses Script beinhaltet alles was du brauchst, es gehören keine weiteren (HTML)-Dateien dazu.
    Speichere es auf PHP-fähigen Webspace ma as "kontakt.php" und probiere es aus.
    Du kannst das Aussehen nach belieben anpassen, indem du im HTML-Teil Änderungen vornimmst, z.B. bei den Stylsheets.
    Bitte beachten, daß du dabei kein doppeltes Anführungszeichen verwenden darfst oder dieses maskieren mußt. Am besten benutzt du das einfache Anführungszeichen so wie ich es gemacht habe, falls erforderlich.

    Wenn das Script so ist, wie du es haben willst, dann verlinkst du deinen Button oder Link "Kontakt" auf der HP mit der URL des Scriptes - also z.B. mit

    Code
    [url='http://xxxxxx.funpic.de/kontakt.php']Kontakt[/url]


    Das ist alles,

    G.a.d.M.

    Ronald