Mal 'ne Frage zu $_FILES['userfile']['type']

Alles, was PHP betrifft, kann hier besprochen werden.

Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 08. June 2009 19:46

Hi AF-COM,
meine Frage wäre folgende:
Wie sicher ist es dass das Arrray $_FILES['userfile']['type'] immer den korrekten MIME-Typ liefert?


Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 08. June 2009 19:58

Wie sicher ist es dass das Arrray $_FILES['userfile']['type'] immer den korrekten MIME-Typ liefert?

Nicht sicher.

Ein Client kann da ja mitsenden was er wil. (auch wenn sich gängige Browser schon dran halten werden).
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Xardas der Dunkle » 08. June 2009 20:07

http://www.w3.org/TR/html401/interact/f ... -17.13.4.2
Stück runter scrollen, da siehst du ein Beispiel für einen multipart/form-data Request. Das was jeweils hinter Content-Type steht ist genau das später im Schlüssel-'type' steht!
User avatar
Xardas der Dunkle
 
Posts: 482
Joined: 09. March 2008 19:40
Location: /var/www

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 08. June 2009 22:09

Xardas der Dunkle wrote:http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2
Stück runter scrollen, da siehst du ein Beispiel für einen multipart/form-data Request. Das was jeweils hinter Content-Type steht ist genau das später im Schlüssel-'type' steht!


So schlau bin ich auch dass ich
1. weiß wie ein multipart/data-Request-Formular auszusehen hat und
2. weiß was in dem type-Index zu stehen hat (bei gif-Bildern z.B. image/gif usw.)

Mir ging es darum wie sicher ich sein kann dass auch wirklich das drin steht was da rein gehört.

Wiedmann wrote:Nicht sicher.

Ein Client kann da ja mitsenden was er wil. (auch wenn sich gängige Browser schon dran halten werden).


Danke für die Antwort "Wiedmann". Das hatte ich mir schon fast gedacht.

Ich habe mir das PEAR-Repository MIME_Type heruntergeladen um den MIME-Typ sicher festzustellen. Leider bekomme ich dauernd die Fehlermeldung "Can't find file command "file"" ohne dass ich einen Fehler finden kann. Ich habe alles "Installiert" und auch entsprechend eingebunden was nötig und so wie es nötig ist, auch das System-Repository welches von dem MIME_Type benötigt wird.

Kennt jemand dieses Repository und diesen Fehler und kannmir einen Tip geben wie ich den Fehler beheben kann. Oder kennt jemand eine Funktion oder Klasse die in PHP schon im Kern eingebaut ist? mime_content_typ() gibt es nicht mehr, das habe ich schon probiert.
Es läuft PHP5.2.9



Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 08. June 2009 22:19

Leider bekomme ich dauernd die Fehlermeldung "Can't find file command "file"" ohne dass ich einen Fehler finden kann.

Du wirst kein Programm yuf dem Rechner haben, dass sich "file" nennt. (oder funktioniert das Kommando "file" bei dir in der Shell?)

mime_content_typ() gibt es nicht mehr,

Das gab's noch nie. Nennt sich: mime_content_type()
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 08. June 2009 22:25

Wiedmann wrote:
Leider bekomme ich dauernd die Fehlermeldung "Can't find file command "file"" ohne dass ich einen Fehler finden kann.

Du wirst kein Programm yuf dem Rechner haben, dass sich "file" nennt. (oder funktioniert das Kommando "file" bei dir in der Shell?) ...


Das ganze läuft auf dem Webserver beim ISP.


Wiedmann wrote:
mime_content_typ() gibt es nicht mehr,

Das gab's noch nie. Nennt sich: mime_content_type()


Sorry, Schreibfehler von mir.


Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 08. June 2009 22:41

"file": das ganze läuft auf dem Webserver beim ISP.

Da kann der Zugriff auf externe Programme natürlich gesperrt sein.

"mime_content_type()": Sorry, Schreibfehler von mir.

Sofern das PHP dort nicht älter als v4.3 ist, beschwer dich bei deinem ISP. (oder wechsel diesen, insb. natürlich wenn es älter als diese Version ist)
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 09. June 2009 11:21

Wiedmann wrote:
"file": das ganze läuft auf dem Webserver beim ISP.

Da kann der Zugriff auf externe Programme natürlich gesperrt sein.

"mime_content_type()": Sorry, Schreibfehler von mir.

Sofern das PHP dort nicht älter als v4.3 ist, beschwer dich bei deinem ISP. (oder wechsel diesen, insb. natürlich wenn es älter als diese Version ist)


Wie ich schon in meinem zweiten Post geschrieben habe läuft v5.2.9.

Das komische ist, dass es schonmal funktioniert hat.

Es handelt sich bei dem ISP und 1und1. Das soll kein schlecht machen oder Werbung sein. Was das Webhosting angeht bin ich trotzdem sehr zufrieden.


Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 09. June 2009 11:57

Wie ich schon in meinem zweiten Post geschrieben habe läuft v5.2.9.

Yup. Hab diese Angabe allerdings auf den XAMPP bezogen.

Es handelt sich bei dem ISP und 1und1.

Yup. Bei dem scheint die mime_magic extension nicht aktiv zu sein.

BTW:
Das externe Kommando "file" kann ich zumindest bei 1&1 benutzen...
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 09. June 2009 12:23

Wiedmann wrote:...Yup. Hab diese Angabe allerdings auf den XAMPP bezogen. ...

Ich habe zur Zeit nirgends XAMPP am laufen.

Wiedmann wrote:...Yup. Bei dem scheint die mime_magic extension nicht aktiv zu sein. ...

Gibt es eine Möglichkeit diese Extension per eigener php.ini zu aktivieren?
So sieht momentan die aktuelle eigene php.ini aus:
Code: Select all
[PHP]
register_globals = off
allow_url_fopen = off
safe_mode = off #Muss leider auf off stehen, da sonst das PEAR-Repository nicht genutzt werden kann. http://pear.php.net
open_basedir = /homepages/XX/XXXXXXXXXX/htdocs/entwicklung/:/usr/lib/php5
disable_functions = system,passthru,shell_exec,popen,escapeshellcmd,proc_open,proc_nice,ini_restore
display_errors = on
display_startup_errors = on
magic_quotes_gpc = off
magic_quotes_runtime = off
upload_tmp_dir = /homepages/XX/XXXXXXXXXX/htdocs/entwicklung/file_tmp
sendmail_from = no_reply@XXXXXXXXXXXXXXX.de
upload_max_filesize = 2M
session.save_path = /homepages/XX/XXXXXXXXXX/htdocs/entwicklung/file_tmp


Wiedmann wrote:...Das externe Kommando "file" kann ich zumindest bei 1&1 benutzen...

Hast Du einen eigenen Webserver oder ein Hostingpaket bei denen? Wie ich schon geschrieben habe, es hat ja schon einmal funktioniert. Ohne dass ich etwas an dem Repository genändert habe, kommt dieser Fehler. Ich drehe noch durch.
Hat niemend einen Tip?


Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Xardas der Dunkle » 09. June 2009 12:39

So schlau bin ich auch dass ich
1. weiß wie ein multipart/data-Request-Formular auszusehen hat und

Halte ich nicht für verständlich. Besonders der multipart/form-data ist ne ziemlich kranke scheiße (die man nicht unbedingt jeden Tag selber schreibt ... [vor allem das jedes Formularfeld einen eigenen Part in dem Request belegt]).
User avatar
Xardas der Dunkle
 
Posts: 482
Joined: 09. March 2008 19:40
Location: /var/www

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 09. June 2009 12:55

Gibt es eine Möglichkeit diese Extension per eigener php.ini zu aktivieren?

Das musst du 1&1 fragen. Und dann kannst gleich fragen, warum diese Extension eh nicht aktiviert ist.

Hast Du einen eigenen Webserver oder ein Hostingpaket bei denen?

Weder noch (nur FTP Zugangsdaten). Dürfte aber ein Hostingpaket sein.

Hat niemend einen Tip?

Hast du denn mal versucht "file" selber aufzurufen?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 09. June 2009 13:05

Da fällt mir doch grad noch was auf:
Code: Select all
disable_functions = system,passthru,shell_exec,popen,escapeshellcmd,proc_open,proc_nice,ini_restore

So können externe Programme natürlich nicht aufgerufen werden.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Knight1 » 09. June 2009 14:13

Wiedmann wrote:Da fällt mir doch grad noch was auf:
Code: Select all
disable_functions = system,passthru,shell_exec,popen,escapeshellcmd,proc_open,proc_nice,ini_restore

So können externe Programme natürlich nicht aufgerufen werden.


Den Gedanken hatte ich gestern Abend auch schon.

Ich hatte die gesamte Zeile auskommentiert und es dann nochmals versucht, ohne Verbesserung.


Kai aka Knight1
Image
User avatar
Knight1
 
Posts: 310
Joined: 18. October 2003 10:03
Location: Trier
Operating System: Windows 7 Ultimate x64

Re: Mal 'ne Frage zu $_FILES['userfile']['type']

Postby Wiedmann » 09. June 2009 15:39

Ich hatte die gesamte Zeile auskommentiert

Das hast du über ein phpinfo() verifiziert?

und es dann nochmals versucht, ohne Verbesserung.

Aber nicht mit einem eigenen Code?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Next

Return to PHP

Who is online

Users browsing this forum: No registered users and 19 guests