Kontaktformular - Seite soll nicht nach oben springen

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

  • Kontaktformular - Seite soll nicht nach oben springen

    Hallo,

    eigentlich bin ich zu doof für PHP und habe nach 4 Lehrbüchern auch schon aufgegeben mich damit zu beschäftigen.

    Nun bin ich aber einem Bekannten einen großen Gefallen schuldig und er möchte von mir eine Landingpage mit PHP - Kontakformular. Und dabei bin auf 1 Problem gestoßen.

    Das Kontaktformular befindet sich ganz unten auf der Seite. Wenn der Absende - Knopf geklickt wird springt die Seite natürlich wieder ganz nach oben. Lässt sich so etwas verhindern?

    Wie gesagt, ich bin zu doof für PHP. Falls es eine Lösung gibt benötige ich eine einfache Erklärung.

    Hier ist mein PHP - Code, den ich aus einem der Bücher abgetippt habe:

    <?php
    if (isset($_POST['senden'])) {

    $fehler = false;
    $fehlertext = "";

    if (empty($_POST['vorname'])) {
    $fehler = true;
    $fehlertext .= "Der Name fehlt!<br>\n";
    }
    if (empty($_POST['nachname'])) {
    $fehler = true;
    $fehlertext .= "Der Nachname fehlt!<br>\n";
    }
    if (empty($_POST['email'])) {
    $fehler = true;
    $fehlertext .= "Die E-Mail-Adresse fehlt!<br>\n";
    }
    if (empty($_POST['botschaft'])) {
    $fehler = true;
    $fehlertext .= "Das Kommentar-Feld muss ausgef&uuml;llt werden!<br>\n";
    }

    if ($fehler) {
    echo "<p>$fehlertext</p>";
    } else {
    $vorname = filter_input(INPUT_POST, 'vorname', FILTER_SANITIZE_STRING);
    $nachname = filter_input(INPUT_POST, 'nachname', FILTER_SANITIZE_STRING);
    $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL);
    $botschaft = filter_input(INPUT_POST, 'botschaft', FILTER_SANITIZE_STRING);
    $mailbody = "$vorname $nachname schrieb:\n\n";
    $mailbody .= $botschaft;
    if (@mail("test@abc.de", "Nachricht", $mailbody, "Von: $Email")) {
    echo "<p class='antwort_php'>Danke! Die Nachricht wurde weitergeleitet!</p>\n";
    } else {
    echo "<p class='antwort_php'>Leider gab es einen Sendefehler!</p>\n";
    }
    }
    }

    ?>

    Danke für's Lesen

  • #2
    Das hat nichts mit PHP zu tun, das wird in HTML gelöst:

    https://de.wikipedia.org/wiki/Anker_(HTML)

    mail() sollte übrigens aus mehreren Gründen nicht für den Mailversand verwendet werden. Sinnvoller ist es fertige Mailer wie z.B. PHPMailer zu verwenden. Ich würde auf jeden Fall abraten den Code so wie er ist einzusetzen.

    Kommentar


    • #3
      Survey Lancaster

      Thank you for this forum. Very helpful and informative. Visit our website!

      Kommentar

      Lädt...
      X