sosla | 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 :
- <?
- if(isset($_POST['action'])) $action=$_POST['action']; else $action="inconnue";
- if($action=="ecriture" ) {
- ############################################################ECRITURE
- //Initialisation des variables envoyées par le formulaire
- if(isset($_POST['title'])) $title=$_POST['title']; else $title="title inconnu";
- if(isset($_POST['creator'])) $creator=$_POST['creator']; else $creator="creator inconnu";
- if(isset($_FILES['fichier']['name'])) $fichier=$_FILES['fichier']['name']; else $fichier="file inconnu";
- //$fichier=ereg_replace($fichier);
- echo $fichier;
- echo $_FILES['fichier']['name'];
- // first connect to database
- $dbcnx = @mysql_connect("localhost","root","" );
- $dbselect = @mysql_select_db("corpuscule" );
- if ((!$dbcnx) || (!$dbselect)) { echo "Can't connect to database"; }
- // Taille maximum
- $MAX_FILE_SIZE = 8000000; // Ceci équivaut environ à 8 mo
- // Dossier de destination du fichier
- $folder = "../sons/";
- // Variables récupérée par methode POST du formulaires
- $fname = $_FILES['fichier']['name'];
- $ftype = $_FILES['fichier']['type'];
- $fsize = $_FILES['fichier']['size'];
- $ftmp = $_FILES['fichier']['tmp_name'];
- // juste pour voir ce que vous uploadez
- echo "ceci".$fname." name<br />";
- echo $ftype." type<br />";
- echo $fsize." size<br />";
- echo $ftmp."ghjg";
- // Test qu'un fichier à bien été uploadé dans le dossier temporaire
- if( !is_uploaded_file($ftmp) )
- {exit("Le fichier est introuvable dans le dossier temporaire" );}
- // Verification de l'extension
- $extensions_valides = array('mp3'); //possibilité d'en mettre plusieur en les séparants d'une virgule ex: ('mp3','jpg','gif')
- $extension_upload = substr( strrchr($fname, '.') ,1);
- if (!in_array($extension_upload,$extensions_valides))
- {exit("Format de fichier incorrecte." );}
- // La taille du fichier n'est pas dépassée
- if($fsize > $MAX_FILE_SIZE)
- {exit("Fichier trop volumineux." );}
- // Nettoyage du nom
- $eviter = array(" - ", "-", " ", "/", "%", "&", "(", " )" );
- $fname_propre = str_replace($eviter, "_", $fname); // remplacement des caractères à évite par _
- $fname_ok = strtolower($fname_propre); // tout minuscule
- // Verification que le fichier n'existe pas déjà déjà
- if(file_exists($folder.$fname_ok))
- {exit("Fichier déjà existant." );}
- // Tout est ok, copie du fichier dans le dossier séléctionné
- if(!move_uploaded_file($ftmp, $folder . $fname_ok))
- {exit("Impossible de copier le fichier dans ".$folder.", verifiez les droits" );}
- }
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
- <title>Ajout de musiques</title>
- </head>
- <body>
- <form name="form1" method="POST" action="addMusic.php" enctype="multipart/form-data">
- <table width="500" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000">
- <tr>
- <td><div align="center">
- <table width="496" border="0" cellspacing="0" cellpadding="5">
- <tr>
- <td colspan="2"><div align="center" class="Style1">ECRITURE
- D'UN FICHIER XML </div></td>
- </tr>
- <tr>
- <td width="248"><div align="right" class="Style2">Titre :
- </div></td>
- <td width="248"><input name="title" type="text" id="title" ></td>
- </tr>
- <tr>
- <td> <input type="hidden" name="MAX_FILE_SIZE" value="500000" />
- <div align="right" class="Style2">Fichier : </div></td>
- <td><input type="file" name="fichier" id="fichier" ></td>
- </tr> <tr>
- <td><div align="right" class="Style2">Label : </div></td>
- <td><input type="text" name="creator" id="creator" ></td>
- </tr>
-
- <tr>
- <td colspan="2"><div align="center">
- <input type="submit" name="Submit" value="Envoyer">
- <input name="action" type="hidden" id="action" value="ecriture">
- </div></td>
- </tr>
- </table>
- </div></td>
- </tr>
- </table>
- <p align="center"> </p>
- <p> </p>
- </form>
- </body>
- </html>
|
Message édité par sosla le 05-02-2007 à 21:21:29
|