Grafiken über PHP-Script erzeugen und Datename mitgeben ?!

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Grafiken über PHP-Script erzeugen und Datename mitgeben ?!

    hi,

    ich habe ein PHP-Script welches mir eine Grafikdatei ausliest und anzeigt, dieses PHP-Script gebe ich einfach im IMG-Tag an, mit dem Bildnamen als Paramter und gut isT:

    <img src="getcover.php?id=32894532"> oder sowas...

    Klappt Prima, nur ei kleiner Schöbheitsfehler:

    Wenn man jetzt mit der Rechten Maustaste "SPEICHERN UNTER" wählt wird als Dateiname immer getcover.php angezeigt und man muß von Hand den Namen eingeben (inkl. .JPG als Endung)...

    gibts ne Möglichkeit das zu beeinflußen, daß da gleich wieder "Bildname.JPG" steht ?

    thx
    Ray

  • #2
    was steht den in der getcover.php?

    leitet die auf das bild um (header(location.. )) oder giebt es die bildurl aus??

    joschua
    Nicht Tatsachen,
    sondern Meinungen über Tatsachen
    bestimmen das Handeln der Menschen.
    (Epiktet (50-138 n.Chr.)

    Kommentar


    • #3
      Hmm der einfachste Weg ginge mit ein paar Zeilen mod_rewrite in der .htaccess (sofern vom Provider zugelassen), etwa so:

      RewriteEngine on
      RewriteCond %{REQUEST_URI} ^/bilder/([^/]+)\.jpg$
      RewriteRule .* /bilder/bild.php?bildname=%1

      Damit wird jeder Zugriff auf /bilder/xyz.jpg umgewandelt in /bilder/bild.php?bildname=xyz.

      Kommentar


      • #4
        Re,

        @joschua: Ich mach einfach ein readfile($bildname)...nicht mehr und nicht weniger...wenn ich das mit Location machen würde, würde mir ja meine Gesamte URL geändert, oder sehe ich das falsch ?


        @pekka: Ich glaub ich versteh das nicht ganz, macht mir den Eindruck als ob es genau umgekerht sein soll ?! statt getcover.php soll da halt Bild1.jpg oder bild2.jpg usw stehen...das ganze mod_reweite sagt mir grad mal garnix...kann ich diese Zeilen einfach in die htaccess reinklatschen ? (gibt bereits eine htaccess mit usernameass in dem Verzeichnis)

        Ray

        Kommentar


        • #5
          hi,
          dan ist es logisch das der bildname getcover.php heisst.
          versuche es mal mit header("location: $bildurl");
          oder echo $bildurl; in der getcover.php

          sollte beides funktionieren.
          joschua
          Nicht Tatsachen,
          sondern Meinungen über Tatsachen
          bestimmen das Handeln der Menschen.
          (Epiktet (50-138 n.Chr.)

          Kommentar


          • #6
            Re,

            @Joschua: Ähm jetzt weiß ich wieder warum ich das mit Readfiel machen muß (?!): Die Coverz welche ich anzeigen will liegen in einem htaccess-geschützten Verzeichnis, damit die nicht jeder direkt linken kann...

            ..wenn ich mit readfile() die Coverz lese kommt da keine Abfrage (so solls ja sein), jedoch bei header:location kommt ne Abfrage

            ...mit Echo klappts leider auch nicht, da zeigt er mir nur den Inhalt der Variablen an (also der Pfad und Bildname) liest das ding jedoch nicht aus

            Ray

            Kommentar


            • #7
              Ähm jetzt weiß ich wieder warum ich das mit Readfiel machen muß (?!): Die Coverz welche ich anzeigen will liegen in einem htaccess-geschützten Verzeichnis, damit die nicht jeder direkt linken kann...

              ..wenn ich mit readfile() die Coverz lese kommt da keine Abfrage (so solls ja sein), jedoch bei header:location kommt ne Abfrage
              Dann bietet sich die mod_rewrite-Lösung an. Mod_rewrite "übersetzt" Anfragen wie

              www.domain.de/bilder/nixe_mit_sturmgewehr.jpg

              *intern* in eine URL wie

              http://www.domain.de/bilder/bild.php...it_sturmgewehr

              die Datei bild.php (von der der Benutzer niemals etwas mitkriegt) kann dann das fragliche Bild aus dem .htaccess-Geschützten Verzeichnis rausholen und durchlassen. Gib mir die Pfadangaben, dann bau ich dir das entsprechende rewrite. Funktioniert natürlich nur, wenn mod_rewrite beim Provider aktiviert ist.

              Kommentar

              Lädt...
              X