Der Martin: Bilder und Suchmaschinen

Beitrag lesen

Hallo,

danke für die Warnungen! Ich wusste, da kommt noch was...

na klar, wir lassen die Leute ja hier nicht sehenden Auges in den Abgrund rennen. 😉

Dieses Kauderwelsch wird zu einem Bild, wenn du dem Browser auch noch mitteilst, dass es eins ist. Sende dazu als erste Anweisung im Script den Content-Type-Header image/jpeg.

Soll ja eben nicht!

Ähm, doch.

Die Bilder werden vom Script korrekt angezeigt. Nur eben nicht im Quelltext. Das ist okay.

Sie werden korrekt angezeigt, wenn sie aus einem HTML-Dokument heraus über ein img-Element abgerufen werden. Dann hat der Browser einen Kontext und kann entscheiden, dass der von dir gelieferte Content-Type text/html, den PHP als Defaultwert setzt, hier falsch sein muss. Das ist aber nicht garantiert, das ist browserabhängig. Der Browser könnte auch entscheiden: Da passt etwas nicht zusammen, ich biete die Ressource einfach zum Speichern an. Er könnte auch entscheiden, anstelle des fehlerhaften Bildes einfach das Icon für "broken image" anzuzeigen. Deswegen solltest du schon einen korrekten Content-Type senden.

session_start();

if(isset($_SESSION["user_xyz"])) { // User ist eingeloggt-darf auf Bilder zugreifen

$name=$_GET["bild"];

if($name=="Suse"){
$datei="../bilder/klaus1.jpg";
}elseif($name=="winter"){
$datei="../bilder/sommer1.jpg;
}elseif(etc.){
usw.
}...{
...
}else{
$file="../forbidden.gif";
}

}else{// User ist nicht eingeloggt

$file="../forbidden.gif";

}
Hier folgt der Code von Rolfs Hinweis

Wenn also php (if...) keinen gültigen Wert findet, wird forbidden.gif angezeigt.

Das ist gut. So werden alle nicht vorgesehenen Namen einfach abgeschmettert. Okay.
Anstelle der ellenlangen if-Kette würde ich aber ein Array bauen:

$AllowedImages =
 [ "Suse":   "klaus1.jpg",
   "winter": "sommer1.jpg",
   "hase":   "igel.jpg"
 ];

Dann reicht ein Einzeiler als Abfrage:

$file = (isset(AllowedImages[$_GET['bild']]) ? AllowedImages[$_GET['bild']] : "forbidden.gif");

Einen schönen Tag noch
 Martin

--
Demnächst vielleicht sogar olympisch: Bogenscheißen.
0 68

Bilder und Suchmaschinen

Treziman
  • sicherheit
  1. 1
    MudGuard
    1. 0
      Treziman
    2. 0

      Rant I - III

      Raketenwilli
  2. 0
    Felix Riesterer
    1. 0
      Treziman
      1. 0
        Matthias Scharwies
        • htaccess
        • sicherheit
  3. 0
    Rolf B
    1. 0
      Felix Riesterer
      1. 0

        Rolfs Vorschlag passt (soweit)

        Raketenwilli
  4. -1
    Linuchs
    1. 0
      Treziman
      1. 0
        Der Martin
        1. 0
          Treziman
          1. 0
            Rolf B
            1. 0
              Treziman
              1. 0
                Rolf B
                1. 0
                  Treziman
                2. 0
                  Treziman
                  1. 1
                    Der Martin
                    1. 0
                      Treziman
                      1. 0
                        Felix Riesterer
                        1. 0
                          Treziman
                      2. 0
                        Der Martin
                        1. 0
                          Der Martin
                          1. 0
                            Rolf B
                        2. 0
                          Treziman
                          1. 0
                            Der Martin
                            1. 0
                              Treziman
          2. 1
            MudGuard
    2. 0
      Der Martin
      1. 0
        Treziman
        1. 0
          Der Martin
          1. 0
            Rolf B
            1. 0
              Raketenwilli
    3. 0

      Ordner nur mit Leseserechten - beschreibbar? Erklärt und gezeigt, Lösung

      Raketenwilli
    4. 0
      TS
      • php
      • sicherheit
      • webserver
  5. 0
    meltemi
    1. 0
      Treziman
      1. 3
        Felix Riesterer
        1. 1
          Treziman
          1. 0
            Auge
            • sicherheit
            • zu diesem forum
            1. 0
              Treziman
              1. 0
                Auge
                1. 0
                  Treziman
    2. 0
      Treziman
      1. 0
        Auge
        1. 0
          Der Martin
          1. 0
            Auge
            • dateityp
            • sicherheit
            1. 1
              Der Martin
              • dateityp
              • grafik
        2. 0

          Bilder und Suchmaschinen, Klärungsbedarf zum RegEx

          Auge
          • htaccess
          • regex
          • sicherheit
          1. 0

            zum RegEx

            Raketenwilli
            1. 0
              Treziman
              1. 0
                Der Martin
                1. 0
                  Auge
                  • grafik
                  • htaccess
                  • regex
                  1. 0

                    WebP mit aufnehmen?

                    Raketenwilli
                  2. 0
                    Gunnar Bittersmann
                    • grafik
                    • performance
                    1. 0

                      AVIF Vergleich, Import, Export

                      Raketenwilli
                    2. 0
                      Auge
                      • grafik
                      • meinung
                      • software
                      1. 0

                        Gimp, Ubuntu, „Rant“

                        Raketenwilli
                        1. 0
                          Auge
                          1. 0
                            Raketenwilli
                            1. 0
                              Auge
                              1. 1

                                Mein Linux verarscht jedenfalls mich nicht ...

                                Raketenwilli
                    3. 0
                      Gunnar Bittersmann
            2. 0
              Auge
              1. 0
                Raketenwilli
  6. 0

    Bilder und Suchmaschinen, Zugriffe per Script

    TS
    • php
    • sicherheit
    • webserver