Page 1 sur 1

upload + conversion video

Posté : 11 nov. 2010, 23:38
par Nuanch
Bonjour, je poste ce message dans la section php avancé car je pense que la gestion d'upload de video et l'utilisation de ffmpeg n'est pas pour debutant (bien que je ne sois pas moi même un expert en php) désolé si je fais une erreur.

Alors j'ai mon code qui me met un Parse error: parse error in video_bd.php on line 40 (la ligne 40 est celle avec le exec ffmpeg)

voici le code:
<?php

try
{
        $bdd = new PDO('mysql:host=localhost;dbname=videos', 'root', '');

}
 
catch(Exception $e)
{
        die('Erreur : ' . $e->getMessage());
}
   
   
$titre = $_POST['titre'];
$vid = basename($_FILES['vid']['name']);
$date = date("d-m-Y");

$req = $bdd->prepare('INSERT INTO video(id, titre, note, date, vid) VALUES("", :titre, "", :date, :vid)');
$req->execute(array(
	'titre' => $titre,
	'vid' => $vid,
	'date' => $date
	));
try
{
	
    if (isset($_FILES['vid']) AND $_FILES['vid']['error'] == 0)
{
        
        if ($_FILES['vid']['size'] <= 1000000000000000000)
        {
                
                $infosfichier = pathinfo($_FILES['vid']['name']);
                $extension_upload = $infosfichier['extension'];
                $extensions_autorisees = array('avi', 'flv', 'mp4', 'wma', 'mov');
							
                if (in_array($extension_upload, $extensions_autorisees))
                {
				    exec('ffmpeg -i '$vid'.'$extension_upload' -s 180x120 -ar 44100 '$vid'.flv', NULL, $return);
                    if (0 == $return)
					{
                       echo 'Conversion OK';
                    }
                    else 
					{
                       echo 'Echec lors de la conversion';
                    }
					   
                    move_uploaded_file($_FILES['vid']['tmp_name'], 'upload/' . basename($_FILES['vid']['name']));
				    echo "L'envoi de la video a bien été effectué !";
                }
        }
}

}

catch(Exception $e)
{
        die('Erreur : ' . $e->getMessage());
}



echo 'Les infos ont bien été ajoutées a la Base de donnée !';
    
?>
Quelqu'un saurait-il pourquoi ce bout de code ne fonctionne pas ?
Merci d'avance :)

Re: upload + conversion video

Posté : 12 nov. 2010, 00:00
par Nuanch
J'ai trouvée l'erreur qui était une erreur basique de concaténation mais j'ai toujours le message :
Fatal error: Only variables can be passed by reference in C:\wamp\www\video_bd.php on line 40
exec('ffmpeg -i ' .$vid. '.' .$extension_upload. ' -s 180x120 -ar 44100 ' .$vid. '.flv', NULL, $return);

Re: upload + conversion video

Posté : 12 nov. 2010, 17:15
par @rthur
Bonjour,
Fatal error: Only variables can be passed by reference in C:\wamp\www\video_bd.php on line 40
Si tu remplaces NULL par une variable bidon ($null) tu as le même message d'erreur?
exec('ffmpeg -i ' .$vid. '.' .$extension_upload. ' -s 180x120 -ar 44100 ' .$vid. '.flv', $null, $return);

Re: upload + conversion video

Posté : 14 nov. 2010, 14:28
par Nuanch
ah non la ça m'écris que les infos sont bien ajoutées a la base de donnée mais ça ne m'écris pas que l'envoi de la video a bien été effectué :roll: ... Merci quand même :)

Re: upload + conversion video

Posté : 14 nov. 2010, 22:00
par Nuanch
Bon et bien maintenant je ne sais pas pourquoi j'obtient :

Notice: Undefined index: titre in C:\wamp\www\video_bd.php on line 36
Notice: Undefined index: vid in C:\wamp\www\video_bd.php on line 37
Les infos ont bien été ajoutées a la Base de donnée !

c'est a dire les lignes:
$titre = $_POST['titre'];
$vid = basename($_FILES['vid']['name']);
alors que dans le formulaire j'ai bien:
<form method='post' action='video_bd.php' enctype='multipart/form-data'>

  Entrez le titre de la video : <input type='text' name='titre'><br />
				 
  Uploadez la video : <input type='file' name='vid' /><br />		 
    		 
 <input type='submit' value='valider'></form>