Chance
Themenersteller
Programmierer
Guru (173 Beiträge)
getimagesize() / is_file() / file_exists() und htaccess, die Datei wird von PHP nicht gefunden.
Ich habe gerade folgendes Phänomen:
Es wird dynmaisch eine Grafikdatei erzeugt über die htaccss Rewrite Rule:
RewriteRule ^image_(.*)_(.*)_(.*)_(.*)$ work.php?set=image&id=$1_$2_$3_$4
Im Browser kann ich diese Datei problemlos aufrufen.
Wenn ich allerdings versuche, Sie in php über getimagesize() einzulesen, oder per is_file() oder file_exists() zu prüfen, wird diese nicht gefunden.
Also ist es in PHP nicht möglich daten so einzulesen ?
Gibt es eine Alternative ?
joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
Hallo
getimagesize() wurde wie aufgerufen? mit http oder ohne? Sollte bei einer Möglichkeit doch ein Ergebnis bringen.
Das die beiden anderen Funktionen nicht die beste Wahl sind ist eigentlich logisch.
Und es gibt so viele Möglichkeiten an die Datei zu kommen.
readfile
filegetscontent
curl
fsockopen
hinterher
imagecreatefromstring
oder
Imagick::readImageBlob
Man kann auch direkter zuschlagen
Imagick::readImage
oder halt eben wenn das Foramt bekannt ist imagecreatefrompng
Gruß
Jörg
Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools
gelöschter Benutzer
Chance schrieb:
Es wird dynmaisch eine Grafikdatei erzeugt über die htaccss Rewrite Rule:
Du kannst mir der .htacces Grafiken erzeugen?
Chance schrieb:
Wenn ich allerdings versuche, Sie in php über getimagesize() einzulesen, oder per is_file() oder file_exists() zu prüfen, wird diese nicht gefunden.
Dein Pfad zur Grafik ist schlicht weg falsch, deshalb können die Funktionen nicht auf die Grafiken zugreifen. Wenn du sie über die URL öffnen willst musst das erst in der php.ini erlauben.
php.net/manual/de/filesystem.configuration.php
Für fopen(), die Funktion ist für binäre Daten zu empfehlen, es kommt aber mehr darauf an was du anschließend mit den Grafiken vor hast.
Schöne Grüße
Thomas
Chance
Programmierer
Guru (173 Beiträge)
Ultima schrieb:
Du kannst mir der .htacces Grafiken erzeugen?
Ja, indem ich PHP zur Hilfe nehme.
Ultima schrieb:
Dein Pfad zur Grafik ist schlicht weg falsch, deshalb können die Funktionen nicht auf die Grafiken zugreifen. Wenn du sie über die URL öffnen willst musst das erst in der php.ini erlauben.
php.net/manual/de/filesystem.configuration.php
Für fopen(), die Funktion ist für binäre Daten zu empfehlen, es kommt aber mehr darauf an was du anschließend mit den Grafiken vor hast.
Ich will die dynamisch erzeigte Grafik nur normal im Dateisystem auslesen, um die dynamisch calculierte Höhe Und Breite zu erfahren.
Aber ich werde nochmal die Pfade testen...
Chance
Programmierer
Guru (173 Beiträge)
Die Lösung des Problems war einfach (ich Fachidiot...), PHP ignoriert die .htaccess.
Daher wäre die HTTP Variante vonnöten gewesen.
Ich habe es so gelößt, das die Daten aus dem Bild im Cache geladen werden.
Das hinzufügen der Höhe und Breite funktioniert daher erst ab dem zweiten Aufruf...
joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
Chance schrieb:
Ich habe es so gelößt, das die Daten aus dem Bild im Cache geladen werden.
Das hinzufügen der Höhe und Breite funktioniert daher erst ab dem zweiten Aufruf...
Hallo
Dann frage ich mich an der Stelle was das im zweiten Anlauf bewirken soll.
Dann kann ich das gleich ohne Angabe machen und der Browser reguliert das von alleine.
Gruß
Jörg
Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools
Das Seitenreport Forum hat aktuell 5276 Themen und 36111 Beiträge.
Insgesamt sind 48364 Mitglieder registriert.
Beitrag erstellen
EinloggenKostenlos registrieren