Keiner: PHP - Antwort in HTML-Seite anzeigen

Ich nutze auf einer Internetseite eine PHP-Skript, um die in einem <form> eingegebenen Daten an eine Datenbank zu senden. Nach erfolgreichem Senden wirde der User durch

echo"<script>
         alert('message sent succesfully');
         window.history.go(-1);
    </script>";

zurück auf die ursprüngliche Seite geführt. Ich würde aber gerne zusätzlich die gesendeten Daten auf der HTML-Seite in einem <label> anzeigen. Gibt es eine Möglichkeit, die Daten über php an HTML zurückzusenden?

  1. Hallo,

    dein Ansatz ist nicht so wirklich sinnvoll. Du kannst eine Umleitung direkt in PHP realisieren:

    <?php
    // Hier wird dein Formular ausgewertet...
    header('Location: http://www.example.com/');
    exit;
    ?>
    

    Es ist auch nicht sinnvoll, den Inhalt in einem label auszugeben. Das label wird in Verbindung mit input-Feldern genutzt, z. B.:

    <label for="vorname">Vorname</label>
    <input type="text" id="vorname">
    

    Du solltest dein HTML zum Anzeigen in der PHP-Datei erzeugen und entsprechend in der Datei anzeigen.

    Freundliche Grüße
    Christian

  2. Hallo und guten Tag,

    Ich nutze auf einer Internetseite eine PHP-Skript, um die in einem <form> eingegebenen Daten an eine Datenbank zu senden. Nach erfolgreichem Senden wirde der User durch

    echo"<script> alert('message sent succesfully'); window.history.go(-1); </script>";

    zurück auf die ursprüngliche Seite geführt. Ich würde aber gerne zusätzlich die gesendeten Daten auf der HTML-Seite in einem <label> anzeigen. Gibt es eine Möglichkeit, die Daten über php an HTML zurückzusenden?

    Wie von Christian schon angedeutet, ist die clientseitige Anzeige wenig sinnvoll. Webseiten mit HTTP/s arbeiten im Client-Server-Verfahren, also "Ping-Pong". Eine Aktion wird angefordert, ausgeführt und eine (passende) Antwort gesendet. Um das Ganze noch etwas komplexer zu machen, kann als Antwort auch nur ein entsprechender Statuscode gesendet werden mit dem Hinweis darauf, wo die vollständige Antwort zu finden ist.

    Ablauf:

    • Request
    • Response mit Status Header 303 + Location Header neues Ziel
    • Request auf neues Ziel (mit Cookie)
    • Response mit Status 200 und Inhalt

    Siehe auch:

    Das hat auch Vorteile bezüglich der Kontrolle der lokalen History und der Gültigkeit der Post-Requests. Es könnte sonst nämlich leichter passieren, dass man einen Post-Request doppelt absendet und damit ggf. sogar doppelte Einträge am Backend erzeugt.

    Grüße
    TS

    --
    es wachse der Freifunk
    http://freifunk-oberharz.de