SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

 
 
Themen-Optionen Ansicht
  #1  
Alt 28.12.2017, 10:54:34
Paykoman Paykoman ist offline
Anfänger
 
Registriert seit: Dec 2017
Alter: 38
Beiträge: 2
selfphp File_upload Tutorial und ermitteln des mime-types

Hallo Forum,

ich bin heute auf euer Tutorial gestoßen und da ich meine Uploads eh noch validieren muss dachte ich mir gut, gehen wir es jetzt an!

Viele viele Sachen sind wirklich gut erklärt und sehr hilfreich, leider habe ich ein Problem mit dem ermitteln von MIME-Typen. Ihr habt da eine schöne Beispielklasse für den Fall das man nicht auf die finfo zugreiffen kann und falls doch leider nur ein sehr sehr kurzes snippet das nicht funktioniert!!!

PHP-Code:
if( !$finfo finfo_open(FILEINFO_MIME_TYPE) ){ echo 'no func'; exit; }
$mime_type mime_content_type($finfo$_FILES['file']['tmp_name']);
finfo_close($finfo);
echo 
'finfo result: '.$_FILES['file']['tmp_name'].' -> 'var_dump($mime_type); exit; 
liefert: finfo result: /tmp/phpLTTq21 -> bool(false)

Ich habe dann natürlich noch ein wenig rum experimentiert, vor allem weil es mich verwundertder das '$finfo' nicht benutzt wird beim ermitteln.

PHP-Code:
$finfo = new finfo(FILEINFO_MIME_TYPE);
$mime_type $finfo->buffer(file_get_contents($_FILES['file']['tmp_name'])); // $finfo->file($_FILES['file']['tmp_name']);
finfo_close($finfo);
echo 
'finfo result: '.$_FILES['file']['tmp_name'].' -> 'var_dump($mime_type); exit; 
Lieferte dann:
Code:
finfo result: /tmp/phpaQAIio -> string(10) "text/plain" // $finfo->file
finfo result: /tmp/phpvbShIL -> string(19) "application/x-empty" // file_get_contents

Nun wundert mich nicht das mansche "Löcher" in Ihr System haben wenn es einem so schwer gemacht wird diese zu stopfen.
Sinn und Zweck ist es ja die MIME zu ermitteln damit wir VOR dem verschieben in einen anderen Ordner an Hand von MIME eine Extension setzten können, offensichtlich fällt PHP dies aber schwer solange die Datei sich noch in dem php temporären Ordner befindet.

Über entsprechende Hilfe wäre ich sehr Dankbar.

MfG: Paykoman

PS: Es wird der EXIF-Header erwähnt und das dort nach wie vor Schadcode enthalten sein kann aber nicht den Hauch eines Ansatzes um was dagegen zu tun... Ist Datei-technisch nicht möglich es heraus zu filtern oder gilt der Ansatz die Dateien entsprechend nicht ausführbar machen (CHMOD + Direktaufruf ausschließlich Medium darstellen und unterdrücken von z.B. php code(wie?) ).
Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:25:48 Uhr.


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


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt