Page 1 sur 1

Upload video

Posté : 06 oct. 2011, 11:53
par noor
Bonjour,
j'ai un problème du code pour faire un upload d'un video .
voila mon code il marche juste pour les images et les musiques :S et j'ai besoin d'un aide pour le faire fonctionner sur les video ?
Merci d'avance,
<form action="" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="60000000" />
<input type="file" name="video">
<input name="upload" type="submit" value="Upload " />
</form>
  <?php 
 if(isset($_POST['upload'])){
   //$ss=mkdir("videos/",0777);
    $uploaddir="videos/";
    $filetype=$_FILES['video']['type'];
    $filename=$_FILES['video']['name'];
    $realpath=$uploaddir.$filename;
    if(!empty($filetype))
    {
    move_uploaded_file($_FILES['video']['tmp_name'],$realpath ) ;
     }	
 }?>
	

Re: Upload video

Posté : 06 oct. 2011, 12:16
par Mazarini
Et qu'est ce qui se passe pour les videos ? un message d'erreur ?

L'upload est le même quelque soit le type de fichier sauf restriction de l'hébergeur. Par contre, il est possible que l'upload soit limité en taille par PHP, la limitation que tu indiques (6Go) est celle que le navigateur prend en compte, celle de PHP reste valable.

Pour info :
post_max_size integer
Définit la taille maximale des données reçues par la méthode POST. Cette option affecte également les fichiers chargés. Pour charger de gros fichiers, cette valeur doit être plus grande que la valeur de upload_max_filesize. Si la limitation de mémoire est activée par votre script de configuration, memory_limit affectera également les fichiers chargés. De façon générale, memory_limit doit être plus grand que post_max_size. Lorsqu'un entier est utilisé, sa valeur est mesurée en octets. Vous pouvez également utiliser la notation sténographique comme décrit dans cette entrée de la FAQ.. Dans le cas où la taille des données reçues par la méthode POST est plus grande que post_max_size, les superglobales $_POST et $_FILES seront vides. Ceci peut être surveillé de différentes façons, e.g. en passant une variable $_GET au script qui traite les données, i.e. <form action="edit.php?processed=1">, et ainsi vérifier si $_GET['processed'] est défini.
source : http://fr.php.net/manual/fr/ini.core.php

Re: Upload video

Posté : 06 oct. 2011, 12:25
par noor
Aucun message d'erreur indiquer, j’essaie juste avec une video du 25 Mo type .wmv , .mp4 et une autre .avi en Localhost ca donne rien :s par contre tout extension des images et ainsi les musique ca marche tres bien .

Re: Upload video

Posté : 06 oct. 2011, 13:55
par Mazarini
Est ce que tu a lu ce que j'ai mis sur "post_max_size integer" et regardé le lien que j'ai mis ?

Tu devrais tester $_FILE['upload']['error'] pour voir si l'upload s'est bien passé.
Tout est expliqué la : http://fr.php.net/manual/fr/features.file-upload.php

Edit : tu fais les choses à l'envers, tu dois traiter l'upload et ensuite afficher la page (avec un message selon le résultat)
Les remarques au dessus reste valable pour les erreurs.
  <?php
$message = "";
if(isset($_POST['upload'])){
  //$ss=mkdir("videos/",0777);
   $uploaddir="videos/";
   $filetype=$_FILES['video']['type'];
   $filename=$_FILES['video']['name'];
   $realpath=$uploaddir.$filename;
   if(empty($filetype))
   {
         $message = "ce que tu veux";
   }
   else
   {
      if (move_uploaded_file($_FILES['video']['tmp_name'],$realpath ))
      {
         $message = "upload OK";
      }
      else 
      {
         $message = "upload KO";
      }
   } 
}
echo $message;
?>


<form action="" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="60000000" />
<input type="file" name="video">
<input name="upload" type="submit" value="Upload " />
</form>