Bonjour,
Voila je rencontre un petit problème avec mon code.
J'aimerait ici pouvoir upload une vidéo, le script fonctionne mais j'ai un léger soucis.
<form action="" method="POST" enctype="multipart/form-data">
Video file directory path: <input type="file" name="video"><br/>
<input type="submit" name="Upload" value="Upload">
</form>
<?php
//This function reads the extension of the file to ensure that it is an video file
function getExtension($str) {
$i = strrpos($str,".");
if (!$i)
return "";
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
//This variable handles an error and won't upload the file if there is a problem with it
$errors=0;
//checks if the form has been submitted
if(isset($_POST['Upload']))
{
//récuperer le nom du fichier
$file = $_FILES['video']['name'];
print_r($_FILES);
//si c'est pas vide
if ($file)
{
$video_filename = stripslashes($file); // maVideo.avi
$video_extension = getExtension($video_filename); // Avi
//vérification de l'extension
$extension_valide = array('mpeg','avi','jpg','mp4','mov','mp3');
if (!in_array(strtolower($video_extension), $extension_valide)) // faux
{
echo '<h1>Unknown extension!</h1>';
$errors=1;
}
else // bon
{
//récupérer la size de la video
$video_size= filesize($_FILES['video']['tmp_name']);
//compare the size with the maxim size we defined and print error if bigger
if ($video_size > 110000000)
{
echo '<h1>You have exceeded the size limit!</h1>';
$errors=1;
}
//give the video a unique name in case a video already exists with the name on the server
$video_name =time().'.'.$video_extension;
//assign a folder to save the video to on your server
$newname="videos/".$video_name;
//verify that the video has been loaded
if ($errors == 0){
if (move_uploaded_file($_FILES['video']['tmp_name'], $newname) == 1)
echo "<h1>File Uploaded Successfully! Try again!</h1>";
else
echo "erreur lors de téléchargement";
}
}
}
}else
echo 'noooooooooooooooo';
?>
Sauf qu'au moment d'upload (comme youtube) sa prend longtemp et j'aimerait savoir s'il est possible de mettre une sorte de barre qui pourrais indiqué le temp restant d'upload (comme youtube)
Ba j'obtient juste un chargement j'aimerait ajouté ce que j'ai fait part plus haut.
@AkexJM et @Benjamin Derepas,
J'ai tenté l'upload progress mais je n'arrivent pas a l'intégré et j'ai pas compris ton histoire d'ajax ? x)
Ajax: asynchronious javascript and XML, en faite ca permet de faire une requête sans rafraichir toute la page (par exemple sur facebook, en réalité tu ne changes jamais de page, par exemple sur certains chats qui se rafraichissent tout seul)
Il me semble (je ne mettrais pas ma main à couper) que si tu veux faire un système de progression, tu dois faire otn upload de vidéos en ajax, sans changement de page ;)
@MrReskill , essais déjà de te renseigner sur jquery et son module Ajax (get,post,json), et une fois aquis, regarde cet article .
Il faudra bien sur adapter le code à ton problème (hehe c'est pas drôle sinon )
Ok j'ai réussi a adapté le script au mien le seul soucis est qu'il ne peut ducoup upload seulement des images ;s
Bien je l'ai pourtant adapté vue que regarde mon code de base, j'ai mis les extensions autorisé hors elle ne le sont pas :O