Bonjour,
Voila mon problème: j'ai des fichiers vidéos enregistrés sur un serveur. Je voudrais rendre ces fichiers téléchargeables. Pour l'instant j'utilise ce code:
Le problème est que fichier à télécharger n'est pas trouvé. Dans le fichier error.log, j'ai la ligne suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 $req = mysql_query($sql) or die('Fehler SQL !<br>'.$sql.'<br>'.mysql_error()); switch($data['dateinameerweiterung']) { case ".avi": $type = "video/x-msvideo"; break; case ".divx": $type = "video/divx"; break; case ".mov": $type = "video/quicktime"; break; case ".mp4": $type = "video/mp4"; break; case ".m4v": $type = "video/x-m4v"; break; case ".wmv": $type = "video/x-ms-wmv"; break; case ".mpg": $type = "video/x-mpeg"; break; case ".mpeg": $type = "video/x-mpeg"; break; default: $type = "application/octet-stream"; break; } while($data = mysql_fetch_assoc($req)){ header("Content-disposition: attachment; filename=".$data['dateiname']); header("Content-Type: application/force-download"); header("Content-Transfer-Encoding:$type\n"); // ne pas enlever le \n header("Content-Length: ".filesize($data['path'].'\\'.$data['dateiname'])); header("Pragma: no-cache"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0, public"); header("Expires: 0"); readfile($data['path'].'\\'.$data['dateiname']); }
Je pense que je ne peux pas accéder au serveur X: aussi facilement car quand j'essai avec un fichier enregistrer sur mon disque C: celà fonctionne sans problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [error] [client 127.0.0.1] PHP Warning: readfile(X:\\MPEG4\\DIVX\\512x384Genesis.Jesus.He.Knows.Me.512x384.25fps.mpeg4.DIVX.755kbps.AAC.126kbps.44kHz.divx) [<a href='function.readfile'>function.readfile</a>]: failed to open stream: No such file or directory in C:\\Dokumente und Einstellungen\\cepc\\Desktop\\Julien\\Mein Projekt\\test_website\\MyFunction.php on line 107, referer: http://127.0.0.1/test_website/index.php?media=MPEG4&type=DIVX&aufloesung=512x384
Dois je modifier quelque chose dans le fichier php.ini, httpd.conf de apache, ou existe-t-il une fonction spéciale pour lire les fichiers distants?
Je vous remercie d'avance
Partager