PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Dateigroeße mit cUrl (http://www.selfphp.de/forum/showthread.php?t=15325)

Mageta 27.11.2006 00:52:35

Dateigroeße mit cUrl
 
Guten Abend,

ich hab da mal wieder eine Frage. Und zwar stellt sich mir zur Zeit folgendes Problem: Ich will meinem User die Möglichkeit geben ein Bild von einem Fremdhoster als Profielbild zu benutzen. Allerdings will ich auch da die Maße des Bildes prüfen. Also dachte ich mir, nimmst du einfach getimagesize() .. das geht auch so an sich sehr gut. Allerdings nicht wen allow_url_fopen auf off is :D.. hab dann meinen ISP gefragt und der meinte, is aus weil er performance kostet, ich solle doch bitte cUrl für entfernte Operationen verwenden.

Also hab ich mir cUrl angeschaut und muss halt jetzt den Umweg gehen, das Bild doch erst temporär auf meinem space zu speichern. (oder gibt es ne Möglichkeit das mit dem ausmaßen auch mit curl zu machen?). Nun geht das auch schon, nur will ich vor dem download vom fremdserver irgendwie prüfen wie groß der Scheiß is. Geht das irgendwie? Weil ich will meinen Space nich mit scheiß vollhauen, weil irgend son Scherzkeks nen 200mb goßen jpg reinstellen will.

Wie gesagt, alle Optionen die auf fopen basieren sind nicht, weil fopen von allow_url_fopen abhängig ist.

güße,
Mageta

meikel (†) 27.11.2006 10:09:01

AW: Dateigroeße mit cUrl
 
Theoretisch gehört Content-Length mit zum HTTP Protokoll. Theoretisch deshalb, weil der Apache die Angabe mitschickt. Diverse Bilderbastelscripte tun dies nicht.

Egal:
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_NOBODY, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

Mit dieser Einstellung erhälst Du nach curl_exec den Header der Datei. Und da suchste Dir dann mit preg_match() die Angaben, die Du benötigst.

xabbuh 27.11.2006 10:18:48

AW: Dateigroeße mit cUrl
 
Ein gut gemeinter Tipp: Verzichte auf das Einbinden von Bildern aus Fremdquellen. Du handelst dir damit nur Ärger ein. Was passiert zum Beispiel, wenn der Benutzer als Bild eine per Basic-Authentisierung geschützte Datei referenziert, der nächste Besucher dann also die Passworteingabeaufforderung erhält und dort dann möglicherweise seinen Benutzernamen und sein Passwort für deine Seite eingibt etc.

BenniG. 27.11.2006 10:24:25

AW: Dateigroeße mit cUrl
 
Außerdem:
Wenn du die Bildurl nur einmal beim Eintragen prüfst hast du das Problem, dass der User die Datei jederzeit ändern kann. Wenn du die Datei bei jedem Aufruf deiner Seite prüfst wird deine Seite langsam, sollte einer der Fremd-Server ausgefallen sein hängt deine Seite bis curl ein timeout erreicht hat.

Mageta 27.11.2006 11:47:12

AW: Dateigroeße mit cUrl
 
@meikel: danke für den Tipp mit dem Header!
@xabbuh, BenniG.: Auch euch Danke. Ich werd wohl dann doch eher die Paar kb-webspace opfern ^^' .. ich geh eh nich von aus das, dass Script, wofür die Funktion gedacht war, groß genutzt wird :D

marc26 27.11.2006 12:12:44

AW: Dateigroeße mit cUrl
 
Mal ganz blöd gefragt, ich hab das selbe Problem - geht aber auch nur um ein paar Bytes, deshalb könnte ich mich auch mit der Temp File Lösung abfinden, bei mir ist aber z.B. auch copy() geblockt - was mach ich denn da ?


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:46:37 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.