Eingabe und Ausgabe in PHP

  • Hallo ich versuche gerade eine art NEWS seite zuerstellen für mich selber als Test. Ich habe da bisschen mit PHP und html jetzt was zusammen getragen nun möchte ich das man auf einer Seite via input etwas eingibt und wenn man auf senden drückt wird dies auf der anderen Seite angezeigt.

    Mir fällt nichts mehr ein was ich falsch machen könnte ich danke schonmal im voraus.

    hier wären die Codes wie das eigentlich Funktionieren sollte.


    Code der Seite 1:

    HTML: admin.html
    1. <form action="infos.html" method="post">
    2. <inpute type="text" name="infos" size="50">
    3. <input type="submit" value="aktualisieren">
    4. </form>

    Code der Seite 2:

    PHP: infos.html
    1. <?php
    2. $infos=$_POST['infos'];
    3. echo $infos;
    4. ?>

    Mein Proplem genau ist das der Text nicht angezeigt wird und ich nicht weiß wo der fehler liegt.

    Danke an alle die mir helfen.

  • Willkommen TeeKay39 hier im Forum,


    ich nehme einmal an, dass du entweder die Seiten auf einen Webserver hochlädst oder auf deinem Computer einen Webserver installiert hast. Eines von beiden brauchst du, damit PHP auch ausgeführt wird.


    Das Problem in deinem Code und Dateinamen ist die Dateiendung. Damit PHP ausgeführt wird, muss die Dateiendung .php lauten (wenn die Servereinstelliunge nicht verstellt ist)


    HTML
    1. <form action="infos.php" method="post">
    2. <inpute type="text" name="infos" size="50">
    3. <input type="submit" value="aktualisieren">
    4. </form>

    und der PHP-Code:

    PHP: infos.php
    1. <?php
    2. print_r ( $_POST['infos']);
    3. ?>


    Der PHP-Befehl hat den Vorteil, dass auch ein Array ausgeben kannst, z.B.

    Code
    1. print_r ( $_POST );

    Sollte dann funktionieren - siehe auch https://www.php-kurs.com/formularauswertung-mit-php.htm

  • Ich danke dir es Funktioniert jetzt aber nur teils. Aber gibt es eine möglichkeit das dann stehen zulassen? Das wenn ich von einem anderen Computer zugreife das immer noch dort steht? Weil sobald ich die URL der seite kopiere und in einem neuen Tab einfüge steht da wieder nichts drinn.

  • Damit es dauerhaft "bleibt" müssen die Informationen irgendwo gespeichert werden. Entweder in einem Textfile oder in einer Datenbank.


    Schau dir mal die Schwesterseite vom HTML-Seminar.de an - sprich

    https://www.php-kurs.com/mysql---datenbank-unter-php.htm


    bzw. in einer Textdatei speichern (hier ist das Beipsiel anders, kannst du ja aber an deine Wünsche anpassen):

    https://www.php-kurs.com/uebung-newsletteranmeldung.htm und auf der nächsten Seite die Lösung dazu.

  • Oder in der Session.


    Die infos.php sieht dann in etwa so aus:

    PHP
    1. <?php
    2. session_start(); //startet die Session
    3. $infos = filter_input(INPUT_POST,'infos', FILTER_SANATIZE_STRING); //korrekte Entgegennahme der POST-Variable
    4. $_SESSION['infos'] = $infos; //speichern der Variable in der Session
    5. ?>


    Die admin.php könnte so aussehen:

    PHP
    1. <?php
    2. session_start();
    3. $infos = $_SESSION['infos'];
    4. ?>
    5. <form action="infos.php" method="post">
    6. <inpute type="text" name="infos" value="<?php echo $infos;?>" size="50">
    7. <input type="submit" value="aktualisieren">
    8. </form>
  • ich glaube ich habe da so eine ähnliche Sache.

    Ich habe auf meinem gemachten Template ein php.script zum Versenden einer Nachricht im Kontakt.


    Kann dies sein, dass ich mit XAMPP auf meinem Rechner die form.php hineingeben muss?

    Ansonsten erscheint immer das Script im Internet.

    http://www.elkeweilhammer.de/contact.html


    vom profider bekomme ich keine Nachricht. In der Schule habe ich nur Design mit css3 und html5 gelelrnt.

    das php haben wir auf den Rechner. Doch wie geht das nochmal? Ich dachte beim Provider wäre sowas auch möglich?

    8):huh: