Problem mit Script fget$fp

gio2000

New Member
Hi zusammen,


Ich hoffe ihr könnt mir weiterhelfen...

Ich betreibe einen 1Klick Hoster ( Picture-Hoster.de + Photosalat.de - we host your Files - 6 MB Upload 4 free - kostenloses File hosting ), leider ist es nicht möglich z.B. Mp3´s hochzualden, da diese per Hex Header überprüft werden.

Ich habe bereits darauf geachtet das die führende 0 berücksichtigt wird.

Nun zum Problem:

Beim Versuch Mp3´s aufzuladen wird folgendes ausgegeben:

Warning: fgetc(): supplied argument is not a valid stream resource in
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/upload.php on line 37

Hier die Zeile um die es geht :

34 if($ext['typ'] == "doc") {
35 $fp = @fopen($file,"r");
36 $file_head = "";
37 for ($c=0;$c<4;$c++) $file_head .= dechex(ord(fgetc($fp)));


Könnt ihr mir vielleicht da einen Tipp geben ?

Andere Dateiformate gehen einwandfrei.

Grüße

gio
 
Hallo,

leider ist es nicht möglich z.B. Mp3´s hochzualden, da diese per Hex Header überprüft werden.
wie meinst Du das, soll man sie hochladen können oder nicht?

Code:
34 if($ext['typ'] == "doc") {
wenn Dateierweiterung = doc - warum laufen MP3 s da rein?
Code:
35   $fp = @fopen($file,"r");
wenn Du das @ wegnimmst bekommst Du die Fehlermeldung. Direkt im Browser oder nur im Logfile, je nach Einstellung in der php.ini.

Code:
37   for ($c=0;$c<4;$c++) $file_head .= dechex(ord(fgetc($fp)));
"fgetc(): supplied argument is not a valid stream resource"
$fp ist kein Dateizeiger - der eigentliche Fehler ist bereits in Zeile 35 aufgetreten weil $fp dort gesetzt wird.

Wenn Du mehr Hilfe brauchst bitte mehr Codezeilen zeigen. :)
 
Hallöchen,

Ich habe den Fehler gefunden, bzw. anderst gelöst.

Da ich hier im Forum gelesen habe das bei Hex Überprüfungen Probleme mit 0 len herschen, habe ich folgende Zeile geändert:

37 for ($c=0;$c<4;$c++) $file_head .= dechex(ord(fgetc($fp)));

in:

37 for ($c=0;$c<4;$c++) $file_head .= dechex(ord(fgetc($fp)));

Damit werden nur die ersten 3 und nicht 4 Zeichen des Hex Headers überprüft und somit hats funktioniert.

Grüße

gio
 
Back
Top