Se connecter / S'enregistrer
Votre question

formulaire upload 2

Tags :
  • Upload
  • Programmation
Dernière réponse : dans Programmation
10 Septembre 2007 19:13:40

Bonjour à tous, j'ai déjà posté il y a 2 ou 3 jours pour un sujet sensiblement similaire et je croyai avoir résolu mon probleme.

Je me suis lancé dans le php pour pouvoir mettre un formulaire d'upload sur mon site... ET J'AI REUSSI !!!!! sauf que ca marche pas super super... je n'arrive pas à uploader des fichier de plus de 2 Mo (des mp3) pourtant mon script est sencé me le permettre, jugez par vous-meme :


<html>
<head>
</head>
<body bgcolor="black" text="white">
<img ALIGN="bottom" src="concour.jpg">

Envoyez votre son !

<form enctype="multipart/form-data" action="upload.php" method="post">
Fichier : <input name="fichier" type="file"><br>
<input type="submit" value="Envoyer">
</form>
<?
// Taille maximum
$MAX_FILE_SIZE = 8000000;

// Dossier de destination du fichier
$folder = "./upload/";

// 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 $fname."<br />";
echo $ftype."<br />";
echo $fsize."<br />";


// 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, '.mp3') ,1);
if (!in_array($extension_upload,$extensions_valides))
{exit("");}

// 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à
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");}
?>
</body>
</html>

Lorsque j'éssaye un mp3 trop lourd, le chargement semble s'éffectuer mais au bout d'une minute il m'affiche une page d'erreur :
Impossible d'afficher la page
HTTP 500 - Erreur interne du serveur
Internet Explorer

Si quelqun à une idée, merci d'avance.

Autres pages sur : formulaire upload

11 Septembre 2007 01:02:30

Salut,

tu dois sûrement être sur un hébergeur gratuit comme Free...
ça tu n'y peux rien, c'est la config php de l'hébergeur.

Pour en être sûr, créer un fichier du nom que tu veux lenom.php dans lequel tu mets juste ces lignes de codes :

  1. <?php
  2.  
  3. phpinfo();
  4.  
  5. ?>


upload le fichier sur ton serveur et rend toi à la page...

Tu verra la config PHP, et y'a un champ qui s'appelle post_max_size, si c'est écrit 2M c'est que limité à 2Mo

13 Septembre 2007 14:09:16

Merci beaucoup mec c'était ca, c'est relou mais jvai pas cracher dans la soupe paske free donne 10 Go gratos pour ton ftp.

En tout cas merci encore.

ciao
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS