gbammelet
Messages postés45Date d'inscriptionmardi 28 janvier 2014StatutMembreDernière intervention15 décembre 2015
-
24 sept. 2014 à 12:54
jordane45
Messages postés38139Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention20 avril 2024
-
24 sept. 2014 à 14:00
Bonjour,
je veux envoyer les données d'un formulaire sur lequel j'ai deux champs input file. un pour les images et l'autre pour les fichiers audio.
Le problème réside dans le fait que les images upload correctement alors que les fichiers audio quand la taille depasse 2Mo il ne s'upload pas; je ne comprend pas pouvez vous m'aider?
le code
if(isset($_FILES['son']) AND $_FILES['son']['error']==0 AND !empty($FILES['son'])){
$dossier = 'son/';
$taille_maxi <= 6000000;
$taille = filesize($_FILES['son']['tmp_name']);
$extensions = array('.mp3', '.mp4', '.wav');
$extension = strrchr($_FILES['son']['name'], '.');
if(isset($_FILES['son'])) {
foreach($_FILES['son'] as $file) {
$fichier = basename($_FILES['son']['name']);
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['son']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
// Insertion dans la base avec Insert into
// .........................
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
}
}
}