bild auslesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
bahnhof
beginn
beschreibung
bild
break
code
fehler
gravierenden logischen fehler
header
image
info
klammer zuviel
machen
mime
ordner
page
parameter
problem
switch
type
-
hi kann mir helfen
und zwar ich habe fehler1-2. php ins Ordner "error" eingefügt und jetzt zeigt kein Bild an
]$page = "error/fehler1.php"; <= 'hier problemme' $page = "error/fehler2.php"; <='hier Problemme' $page = "seitenkopf.php"; if (!isset($_SERVER['HTTP_REFERER'], $page)) { exit; } if (isset($_GET['bildname'])) { $filename = 'bilder/' . $_GET['bildname']; $info = getimagesize($filename); switch($info[2]) { case 1: //gif header("Content-type: image/gif"); break; case 2: // jpeg header("Content-type: image/jpeg"); break; case 3: // png header("Content-type: image/png"); break; case 4: // jpg header("Content-type: image/jpg"); break; } readfile($filename); exit; }
Beitrag zuletzt geändert: 22.4.2014 14:13:40 von youtvti -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Was genau ist das für ein Script und was genau willst du damit machen? Durch deine Beschreibung versteh ich zumindest nur Bahnhof. Und ist das das volle Script, wenn ja, seh ich schon einen Fehler:
]$page = "error/fehler1.php"; <= 'hier problemme'
Da darf keine Eckige Klammer zu Beginn sein, lösch diese doch.
Normalerweise gibt PHP einen genauen Error aus, in welcher Zeile das Script nicht funktioniert und was der Fehler ist. Gib diesen doch bitte an, falls das nicht das Problem war. -
nein die eck-klamme ist das nicht ich habe bei ein fügen "[code][/code]" ein klammer Zuviel gemacht
mit dieser Skript lese ich die Bilder aus dem ordner "Bild" der .htaccess geschutz ist
mit<img src="bildanzeige.php?bildname=fehler1.jpg" alt="">
die Bildanzeige.php ist komplett
das Problem ist das ich die fehler1 und fehler2.php in ein Ordner eingefügt
ich denke das Problem liegt hier bei Ordner
$page = "error/ fehler1.php";
da der
funktioniert 1A$page = "seitenkopf.php";]
Beitrag zuletzt geändert: 22.4.2014 17:02:49 von youtvti -
also, da wir deinen ganzen Code nciht kennen müssen wir anhand dessen, was du uns lieferst schauen, was da passiert.
1. Du erwartest über den get-Parameter einen bildnamen. wie sieht der Bildname aus? steht die Dateinamenserweiterung dran? ja/nein (prüfe obs so ankommt)
2. du prüfst, ob die variablen $_SERVER["HTTP_ REFERER"] und $page gesetzt sind. diese sind immer gesetzt, da der HTTP_REFERRER auch mitgeliefert wird, wenn er nicht von woanders kommt, nur dass der Wert dann mit ""/null befüllt ist, wenn ich mich recht entsinne und $page überschreibst du mehrfach manuell, demzufolge macht das konstrukt keinen sinn... oder du hast deine Kurzschreibweise für den Quote ungünstig abgekürzt...
3. warum machst du du die switch-case nicht auf $info["mime"]? ich weiß nciht, obs da probleme geben könnte, wegen Anordnung der bilder, aber ich würd eher auf den named index gehen als nach stellenwertsystem, wo man nicht weiß, obs immer dasselbe ist, kann ja je nach webserver variieren...
da fällt dann auch die komplette switch-case weg, weil du einfach
header("Content-type: " . $info["mime"]);
schreiben könntest und den Code vereinfacht hättest an der Stelle...
4. was willst du mit Page erreichen? der bildname kommt doch über get-Code? Ich vermute da mal einen gravierenden logischen Fehler, aber mit den mir vorliegenden Informationen kann ich auch nur rumraten, was du da gemacht hast... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage