Beiträge von Catweazle

    Hallo und vielen Dank für die Hilfe!

    Ich habe gelernt, das ich PHP von html besser trennen muss.


    Zipity:

    Wollte damit sagen, wenn nur ein Feld ausgefüllt wurde und die Seite erneut aufgerufen wurde, zeigte es nicht den bereits eingetragenen Wert des anderen Feldes erneut an. Hoffe ich konnte es jetzt besser erklären.


    m.scatello:

    Danke für dein Scriptvorschlag. Deinem Einverständnis vorausgesetzt hab ich das kopiert und mal getestet (Kl. Hinweisfenster öffnet sich).


    Das ich Formulare besser mit POST und nicht mit GET abschicken soll, habe ich auch gelernt. Nochmals danke an alle für eure Hilfe!

    Hallo, ich bin Neuling bei der PHP-Programmierung und arbeite zur Zeit das Tutorial

    "https://www.php-kurs.com" , das ich prima finde, durch.

    Aktuell bin ich bei der Formular-Auswertung unter:

    https://www.php-kurs.com/formularauswertung-mit-php.htm

    Das Script habe ich soweit verstanden, allerdings habe ich Probleme an folgendem Punkt:

    Wenn nicht alle Felder ausgefüllt wurden kommt eine Fehlermeldung, soweit ok.

    Wenn nur ein Feld ausgefüllt wurde, kann ich nicht bereits eingetragene Daten wieder eintragen.


    Hier mein Test-Script:


    <?php // Script-Anfang, muss immer in erste Zeile stehen!


    // Dateiname in Variable speichern

    $PHP_SELF = $_SERVER['PHP_SELF'];


    // wenn Feld Vorname leer ist

    if ( empty ($_GET['vorname']) == TRUE


    // oder

    or


    // wenn Feld Nachname leer ist

    empty ($_GET['nachname']) == TRUE )


    // dann ...

    {

    if ( $_GET['kontrolle'] == 1 )

    { echo "<p><b>Leere Felder z&WCF_AMPERSANDählen nicht,

    gehen Sie nicht &WCF_AMPERSANDüber Los, ziehen Sie keine ...</b></p>"; }


    echo '

    <!-- Script ruft sich selbst auf mit festem Dateinamen -->

    <!-- <form action="affenformular.php" method="get"> -->


    <!-- Script ruft sich selbst auf, auch wenn Name geaendert wurde -->

    <form action="'. $PHP_SELF .'" method="get" >


    <p>

    <input type="hidden" name="kontrolle" value="1">

    </p>


    <p>Ihr Vorname:

    <input type="text" name="vorname" size="50">

    </p>


    <p>Ihr Nachname:

    <input type="text" name="nachname" size="50">

    </p>


    <!-- bereits eingetragene Text erneut anzeigen -->

    if (!empty ($_GET['nachname']) == TRUE )

    {

    echo ($_GET['nachname']);

    }


    <p>Absendebutton:

    <input type="submit" value="absenden">

    </p>


    </form>

    ';


    }

    // ansonsten

    else

    {

    // beliebige Aktion, z. B. E-Mail senden, DB-Eintrag


    // Anzeige des eingetragenen Vornamen

    echo "eingetragener Vorname: " . $_GET['vorname'];


    // Zeilenumbruch

    echo "<br>";


    // Anzeige des eingetragenen Nachnamens

    echo "eingetragener Nachname: " . $_GET['nachname'];

    }

    ?>


    Leider kommt im Browser folgende Fehlermeldung:

    Parse error: syntax error, unexpected 'nachname' (T_STRING), expecting ',' or ';'


    wenn ich folgenden Bereich entferne, funktioniert das Script ohne Daten merken:

    <!-- bereits eingetragene Text erneut anzeigen -->

    if (!empty ($_GET['nachname']) == TRUE )

    {

    echo ($_GET['nachname']);

    }


    Wenn jemand eine Idee hätte, wäre super!