Wie bekomme die E-Mail von Kommentar auf meine Datei

  • Hallo , Erste zu sagen das mein deutsch nicht so guti ist ..... ich bin neu mit HTML , mit PHP noch erste anfang.... meine code


    PHP
    1. <?php ### messages.php ### utf8 ### äöüÄÖÜ ###
    2. header('Content-Type: text/html; Charset=utf-8');
    3. mb_internal_encoding('UTF-8');
    4. date_default_timezone_set('Europe/Berlin');
    5. ?>

    HTML
    1. </body>
    2. </html>


    So , ist leute die hat mich mit dem PHP Code geholfe .... .Was ich möchte ist wenn jemand seine E-mail schreibt wird gespeicher auf meine messages.inc.html Datei , aber sie wird nicht auf Kommentar gezeigt .... kann jemand hilfe mit deisem Probleme , Danke !

  • Eine verbesserte Version

  • Danke für deine Antwort ! , aber ich möchte die E-mail wird nicht auf Kommentare Spalte gezeigt , nur sie speichen auf der messages.inc.html , diese Datei möchte ich um Kommentaren zu Verwalten.....

    ich kenne nicht PHP .. aber ich habe Ein Bissen Python gelern , Vielleicht ich brauche eine Variable für eMail um zu sagen das sie auf Kommentar nicht zeigen ? , Beipiel , $_POST['email'] , aber ich weiss nicht wie machen kann.....

  • Danke für deine Hilfe ! , mit dem Code wird alles gespeicher auf messages.inc.html , das ist gut , aber was ich nicht möchte das die E-mail Adresse wird auf Kommentart gezeigt...


    Der Kommentare Code habe von m.scatello genomen... , ist diesen:





    Jetz bekomme auf Kommentare Seite so :


    From: me eMail: nff@web.de at: 2018-07-01 11:48:02

    hallo


    und was ich möchte:


    From: me at: 2018-07-01 11:48:02

    hallo

  • danke , aber wenn lösse die Zeile(14) , dann bekomme keine E-mail werde auf messages.inc.html noch auf Kommentar Website , und was ich möchte die E-mail Adresse auf messages.inc.html gespeicher werde , aber wird nicht gezeigt auf der Kommentare ..

  • @m.scatello


    Zitat

    Ich denke, es wäre deutlich sinnvoller, die Daten in einer Datenbank zu speichern. Wieso sollte man die Mail-Adresse in die HTML-Datei schreiben, und sie dann doch nicht anzeigen? OK, man könnte das per CSS ausblenden, aber macht das Sinn?


    wegen Spann....

  • danke , aber wenn lösse die Zeile(14) , dann bekomme keine E-mail werde auf messages.inc.html noch auf Kommentar Website , und was ich möchte die E-mail Adresse auf messages.inc.html gespeicher werde , aber wird nicht gezeigt auf der Kommentare ..

    Dann bleibt dir wohl nur noch wie m.scatello sagt es mit CSS auszublenden. Oder du nimmst ein Javascript und machst die Zeilen mit replace() weg

  • From: me eMail: nff@web.de at: 2018-07-01 11:48:02

    hallo


    ich habe versuche mit css , aber das probleme ist das E-mail Fenster wird nicht gezeigt....


    Code
    1. <label id="me">E-Mail: <br><input type="text" name="email"><br></label>

    dann auf Css


    Code
    1. <style>
    2. #me {
    3. visibility: hidden;
    4. }
    5. </style>
  • Jetzt verstehe ich nur noch Bahnhof.

    Du möchtest doch das auf der Kommentar Webseite keine Email zu sehen ist.

    Also muß sie ja noch da sein. Gib mir mal den Quelltext von der jetzigen Seite,was da noch produziert wird.


    Oder du machst es ganz anders.

    Gibst in Zeile 14,anstatt das

    Code
    1. " <b>eMail:</b> " . htmlspecialchars($_POST['email']) .

    machst du das raus

    Code
    1. " <span class="mailin"><b>eMail:</b> " . htmlspecialchars($_POST['email']) ."</span>

    und schreibst in der Css bei der Kommentar Seite dann

    Code
    1. .mailin{
    2. display:none;
    3. }
  • mit deine code




    Code
    1. " <span class="mailin"><b>eMail:</b> " . htmlspecialchars($_POST['email']) ."</span>

    das Browser Fenster wird weiß... , ich denke die bei deine code gibt es eine Fehler... , ich denke hat etwas mit den Klammer zu tun... ich habe sie versuch zu verschieben aber ohne erfolgt....

  • Hey,


    m.scatello : So kann ein Einsteiger garnicht verstehen was da passiert. Man muss es schon erklären. Sonst kopiert er es einfach rüber und versteht nicht wie das funktioniert.


    mezb


    Zu deinem Code aus Beitrag 1:


    Die Daten würde ich sofort nach der Absenden des Formulares mit der Function filter_var oder filter_input filtern und die Leerzeichen entfernen. Denn ein Leerzeichen ist schon ein Zeichen und wird bei nicht entfernen als Value des Array Keys angsesehen. Dadurch ist dann die Prüfung durch isset immer True, obwohl nur ein Leerzeichen als Value vorhanden ist.


    Wenn du die Daten in eine Textdatei speichern willst dann schlage ich die die Function file_put_contents vor. Diese ist einer der einfachsten Methoden um etwas in eine Txt-Datei abzuspeichern, meiner Meinung nach. Mit file_get_contents kannst du dann die ganzen abgespeicherten Daten aus der Datei als String holen.

    Je nachdem musst du dann auch jede Nachricht trennen. Dazu eignet sich die Function explode. Dann kannst du den Inhalt ausgeben.


    So würde ich es machen (ohne Lerrzeichenentfernung und Filterung der Daten):

    Ich habe die Formulardaten in einem Array Key als Value zugeordnet. Arrays kann man in Textfiles nur speichern wenn man diese in ein speicherbares Format umwandelt. Dafür sorgt die Function serialize(). Dann kann man die Daten in die Textfile abspeichern. Wichtig ist dabei, dass jede Nachricht 1 Zeile ist. Die anderen werden in die nächste Zeile gespeichert. Dafür sorgt \n.


    Beim Auslesen der Daten aus der Textdatei nehme ich die Function file weil diese für jede Zeile einen Array zurückgibt. Somit können wir bei jeder Message das Format in einer foreach-Schleife wieder zu einem Array ändern. Dies erreicht man durch unserialize. Die Messages werden dann in dem Array $allMessages gespeichert. Dieser wird dann für die Ausgabe verwendet.


    Grüße,

    Stef

  • Die Prüfung ob die 3 Array Keys, $_POST['post'], $_POST['name'], $_POST['text'], vorhanden sind ist falsch. Du musst für jede Überprüfung eines Array Keys isset() anwenden.

    Du möchtest bestimmt mal Doku lesen: http://de2.php.net/manual/de/function.isset.php


    Falsch erklären macht es auch nicht besser. 8)^^8)


    Außerdem hat dein Script auch Macken!


    Und: wie ich schon sagte, mit einer Datenbank ist man besser dran als mit dem Dateigehampel


  • Du möchtest bestimmt mal Doku lesen: http://de2.php.net/manual/de/function.isset.php


    Falsch erklären macht es auch nicht besser. 8)^^8)


    Okay. Post ist eine vordefinierte superglobale Variable. Da steht aber als erstes: " Prüft, ob eine Variable existiert und ob sie nicht NULL ist".

    Was ließt du dort raus? Das man prüft ob eine Variable existiert und diese nicht null ist. Daher habe ich es immer so aufgenommen, dass man für jede Variable ein eigenes isset braucht.


    Man kann auch mehr Variablen als Parameter mitgeben? Wusste ich bisher garnicht. Ich habe dies jetzt, da ich es weiß, in meinem Beitrag wieder überarbeitet.




    Außerdem hat dein Script auch Macken!


    Und: wie ich schon sagte, mit einer Datenbank ist man besser dran als mit dem Dateigehampel

    Dann zeige mir die Macken. Ich sehe da keine Macken.


    Klar ist eine Datenbank besser. Wenn er es aber mit einer Textfile machen möchte kann er es ruhig machen. Das ist seine Entscheidung.