probleme d'upload mp3

probleme d'upload mp3 - PHP - Programmation

Marsh Posté le 04-02-2007 à 12:24:52    

Bonour,
j'essaie depuis quelques jours d'uploader des mp3 via ce formulaire ci dessous, seulement pour les mp3 plus gros que 250Ko il ne reconnait que le nom ($_FILES['fichier']['name']) mais jamais la taille ni le type ni le temp_name, j'ai bien modifier mon php.ini afin de pouvoir envoyer des fichiers plus lourds que 2M mais sans résultats, les images passent, mais pas mes mp3 de 6000 Ko alors on m'a dit qu'il y avait un moyen de contourner ce probleme en pasant direct par ftp mais  du coup c'était moins sécurisé. Comme je suis en local je m'étonne de ne pas pouvoir les envoyer ... quelqu'un aurait une idée ?
Je vous remercie,
Sophie.

Code :
  1. <?
  2. if(isset($_POST['action'])) $action=$_POST['action']; else $action="inconnue";
  3. if($action=="ecriture" ) {
  4. ############################################################ECRITURE
  5. //Initialisation des variables envoyées par le formulaire
  6. if(isset($_POST['title'])) $title=$_POST['title']; else $title="title inconnu";
  7. if(isset($_POST['creator'])) $creator=$_POST['creator']; else $creator="creator inconnu";
  8. if(isset($_FILES['fichier']['name'])) $fichier=$_FILES['fichier']['name']; else $fichier="file inconnu";
  9. //$fichier=ereg_replace($fichier);
  10. echo $fichier;
  11. echo $_FILES['fichier']['name'];
  12. // first connect to database
  13. $dbcnx = @mysql_connect("localhost","root","" );
  14. $dbselect = @mysql_select_db("corpuscule" );
  15. if ((!$dbcnx) || (!$dbselect)) { echo "Can't connect to database"; }
  16.    // Taille maximum
  17. $MAX_FILE_SIZE = 8000000; // Ceci équivaut environ à 8 mo
  18. // Dossier de destination du fichier
  19. $folder = "../sons/";
  20. // Variables récupérée par methode POST du formulaires
  21. $fname = $_FILES['fichier']['name'];
  22. $ftype = $_FILES['fichier']['type'];
  23. $fsize = $_FILES['fichier']['size'];
  24. $ftmp  = $_FILES['fichier']['tmp_name'];
  25. // juste pour voir ce que vous uploadez
  26. echo "ceci".$fname." name<br />";
  27. echo $ftype." type<br />";
  28. echo $fsize." size<br />";
  29. echo $ftmp."ghjg";
  30. // Test qu'un fichier à bien été uploadé dans le dossier temporaire
  31. if( !is_uploaded_file($ftmp) )
  32. {exit("Le fichier est introuvable dans le dossier temporaire" );}
  33. // Verification de l'extension
  34. $extensions_valides = array('mp3'); //possibilité d'en mettre plusieur en les séparants d'une virgule ex: ('mp3','jpg','gif')
  35. $extension_upload = substr(  strrchr($fname, '.')  ,1);
  36. if (!in_array($extension_upload,$extensions_valides))
  37. {exit("Format de fichier incorrecte." );}
  38. // La taille du fichier n'est pas dépassée
  39. if($fsize > $MAX_FILE_SIZE)
  40. {exit("Fichier trop volumineux." );}
  41. // Nettoyage du nom
  42. $eviter = array(" - ", "-", " ", "/", "%", "&", "(", " )" );
  43. $fname_propre = str_replace($eviter, "_", $fname); // remplacement des caractères à évite par _
  44. $fname_ok = strtolower($fname_propre); // tout minuscule
  45. // Verification que le fichier n'existe pas déjà déjà
  46. if(file_exists($folder.$fname_ok))
  47. {exit("Fichier déjà existant." );}
  48. // Tout est ok, copie du fichier dans le dossier séléctionné
  49. if(!move_uploaded_file($ftmp, $folder . $fname_ok))
  50. {exit("Impossible de copier le fichier dans ".$folder.", verifiez les droits" );}
  51. }
  52. ?>
  53. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  54. <html xmlns="http://www.w3.org/1999/xhtml">
  55. <head>
  56. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  57. <title>Ajout de musiques</title>
  58. </head>
  59. <body>
  60. <form name="form1" method="POST" action="addMusic.php" enctype="multipart/form-data">
  61.   <table width="500" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000">
  62.     <tr>
  63.       <td><div align="center">
  64.           <table width="496" border="0" cellspacing="0" cellpadding="5">
  65.             <tr>
  66.               <td colspan="2"><div align="center" class="Style1">ECRITURE
  67.                   D'UN FICHIER XML </div></td>
  68.             </tr>
  69.             <tr>
  70.               <td width="248"><div align="right" class="Style2">Titre :
  71.                   </div></td>
  72.               <td width="248"><input name="title" type="text" id="title" ></td>
  73.             </tr>
  74.             <tr>
  75.               <td> <input type="hidden" name="MAX_FILE_SIZE" value="500000" />
  76.     <div align="right" class="Style2">Fichier : </div></td>
  77.               <td><input type="file" name="fichier" id="fichier" ></td>
  78.             </tr>  <tr>
  79.               <td><div align="right" class="Style2">Label : </div></td>
  80.               <td><input type="text" name="creator" id="creator" ></td>
  81.             </tr>
  82.            
  83.             <tr>
  84.               <td colspan="2"><div align="center">
  85.                   <input type="submit" name="Submit" value="Envoyer">
  86.                   <input name="action" type="hidden" id="action" value="ecriture">
  87.               </div></td>
  88.             </tr>
  89.           </table>
  90.       </div></td>
  91.     </tr>
  92.   </table>
  93.   <p align="center">&nbsp;</p>
  94.   <p>&nbsp;</p>
  95. </form>
  96. </body>
  97. </html>


Message édité par sosla le 05-02-2007 à 21:21:29
Reply

Marsh Posté le 04-02-2007 à 12:24:52   

Reply

Marsh Posté le 04-02-2007 à 16:25:10    

<input type="hidden" name="MAX_FILE_SIZE" value="500000" />  
 
Tu limites à 500Ko avec ça. :spamafote:


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 04-02-2007 à 16:30:40    

pas de balises code -> je lirai quand y'en aura :o

Reply

Marsh Posté le 05-02-2007 à 15:50:40    

Bonjour,
voilà j'ai mis les balises codes mais surement mal ... je vais revérifier tout cela sinon j'ai bien entendu testé en mettant mon max file bien plus élevé que cela et aussi en enlevant mais cela ne change rien...
Merci pour votre aide,
bonne aprem

Reply

Marsh Posté le 05-02-2007 à 16:00:46    

C'est [ code]...[ /code] sans les espaces.
 
Quand tu parles de modifier ton MAX_FILE_SIZE tu parles bien de celui du formulaire, et pas la variable PHP ? (Pas géniale idée de l'appeler pareil, d'ailleurs, vu que ce n'est pas la même :/)


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 05-02-2007 à 21:24:38    

j'ai modifié la taille des 2 et puis j'ai enlevé tout le code superflu aussi en ne testant que copy(); mais rien ... il ne reconnais toujours pas taille, type et temp_name mais bien le nom. Est-ce que ça fonctionne chez vous l'upload d'mp3 ou de gros fichiers en local ?
Merci merci

Reply

Marsh Posté le 05-03-2008 à 11:52:43    

Bonjour tout le monde,
 
je ressors un peu ce thread des abîmes mais j'ai le même soucis, je teste un upload de mp3 par formulaire et les params 'type' et 'tmp_name' sont vides et le 'size' est à 0.
 
Si la solution a été trouvée depuis je suis preneur ;-)
 
Merci
Julien

Reply

Marsh Posté le 05-03-2008 à 12:05:14    

oups j'ai parlé un peu vite, je n'avais vérifié qu'un paramètre sur 2 dans mon php.ini.
 
pour ceux ou celles qui passent sur ce thread pensez à vérifier :
upload_max_filesize
ET
post_max_size
 
dans le php.ini
 
A+
Julien

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed