Rolf B: Hier nun doch mal das ganze Script

Beitrag lesen

Hallo oxo888oxo,

Die Mails werden dann auch versendet, aber PHP gibt eine Fehlermeldung.

Dann hast Du was anderes falsch gemacht.

Du kannst Dir Arbeit sparen, wenn Du die filter_input Funktion verwendest.

$referer = filter_input(INPUT_SERVER, "HTTP_REFERER");

$text =
"Seite: https://example.org$dateiname

Quelle: $referer

$useragent";

Aber gut ist das auch nicht. Für mehrzeilige Strings nimmt man eigentlich heredoc-Strings:

$text = <<<EOS
Seite: https://example.org$dateiname

Quelle: $referer

$useragent
EOS;

Wobei das auch noch nicht das Beste ist. Ich würde das mit dem Ausgabepuffer lösen. PHP ist eine Sprache für Templates, nicht für Stringverkettung:

ob_start();
?>
Seite: https://example.org<?= filter_input(INPUT_SERVER, "REQUEST_URI") ?>

Quelle: <?= filter_input(INPUT_SERVER, "HTTP_REFERER") ?>

<?= filter_input(INPUT_SERVER, "HTTP_USER_AGENT") ?>
<?php
$text = ob_get_clean();

Dieses Script schaltet die Ausgabepufferung ein, d.h. alles, was das Script jetzt ausgibt, wird zwischengespeichert. Dann wird der PHP Modus beendet und der Mail-Body "ausgegeben". Der geht in den Puffer. Die variablen Werte werden mit <?= ... ?> in den Text eingebaut. filter_input kümmert sich darum, dass fehlende $_SERVER-Einträge zum Leerstring werden.

Danach geht's zurück nach PHP und der Buffer wird mit ob_get_clean ausgelesen und geleert.

Was mir derzeit nicht klar ist, ist die Frage, ob man für einen Mail-Body Zeichen maskieren muss oder ob man blindlings den Inhalt der $_SERVER-Werte hinausrotzen kann. Du erzeugst dem Anschein nach keine HTML Mail, deshalb braucht es keine HTML Maskierung. Aber vielleicht eine andere. Dedlfix? Weißt Du das?

Rolf

--
sumpsi - posui - obstruxi
0 56

Was macht diese Zeile PHP code genau?

oxo888oxo
  • php
  1. 1
    dedlfix
    1. 0
      Tabellenkalk
      1. 0
        oxo888oxo
      2. 0
        dedlfix
        1. 0

          Hier nun doch mal das ganze Script

          oxo888oxo
          1. 0
            dedlfix
            1. 0
              oxo888oxo
              1. 0
                Rolf B
                1. 0
                  oxo888oxo
          2. 0
            Rolf B
            1. 0
              oxo888oxo
              1. 0
                dedlfix
                1. 0
                  oxo888oxo
                  1. 0
                    dedlfix
                    1. 0
                      oxo888oxo
                  2. 0
                    Rolf B
                    1. 0
                      dedlfix
          3. 2
            Mitleser 2.0
            1. 0
              oxo888oxo
              1. 0
                Mitleser 2.0
                1. 0
                  oxo888oxo
                2. 0

                  PHP: error_log();

                  Raketenlogbuchschreiber
                  1. -1
                    Raketenlogbuchschreiber
                    1. 0

                      Verwendungsbeispiel

                      Raketenlogbuchschreiber
                  2. 0

                    PHP: error_log(); Logrotate

                    TS
                    • linux
                    • php
                    1. 0
                      Raketenlogbuchschreiber
            2. 1
              dedlfix
              1. 0
                TS
                • dateisystem
                • php
                • webserver
                1. 0
                  Mitleser 2.0
                  1. 0
                    Frank
                    1. 0
                      Raketenfleischwurst
                      1. 0

                        Zum Forum

                        Raketenfleischwurst
                        • zu diesem forum
                        1. 0
                          Der Martin
                          1. 0
                            Raketenfleischwurst
                            1. 0
                              Raketenwissenschaftler
                              1. 0
                                klawischnigg
                                1. 0
                                  Raketenwissenschaftler
                                  1. 0
                                    klawischnigg
                                    1. 0
                                      Raketenwissenschaftler
                                  2. 0
                                    Raketenfleischwurst
                              2. 0
                                Amateurpsychologe
                                1. 0
                                  Raketenennachrichtenempfangsbestätiger
                        2. 0
                          Rolf B
                          1. 0
                            Raketenwissenschaftler
                            1. 4
                              Tabellenkalk
                          2. 0
                            Der Martin
                            1. -2
                              Raketenwilli
                              1. 0
                                Martl
                                • menschelei
              2. 0
                Frank
              3. 0

                Mail? Wirklich?

                Raketeneinwandfinder
      3. 0
        TS
    2. 0
      TS
      • logik
      • php
      • programmiertechnik
  2. 0
    Rolf B
    1. 0
      Der Martin
      1. 0
        oxo888oxo