Problème pour uploader videos

Eléphant du PHP | 287 Messages

17 juin 2009, 17:24

Bonjour,
Pb pour uploader mes vidéos .
Message : Le fichier est introuvable
Voici mon formulaire de sasie :
<form method="post" enctype="multipart/form-data" action="upload_video.php"> 
 Choisissez un Pays :
<select name="pays">
          <option value="1"> Afghanistan</option>
          <option value="2"> Afrique du Sud</option>
          <option value="3"> Albanie</option>
          <option value="4"> Algérie</option> 
        </select>
Fichier à transf&eacute;rer :
<input type="file" name="fichier" size="30">
 Donnez un titre &agrave; votre vid&eacute;o <input type="text" name="titre_video" size="40" value="" maxlength="70">
 Choisissez un Crit&egrave;re :
      <select name="critere">
        <option value="1">Ville</option>
        <option value="2">Mer</option>
        <option value="3">Montagne</option>
        <option value="4">Nature</option>
        <option value="5">Monuments</option>
        <option value="6">Panoramique</option>
        <option value="7">Aéroport - Héliport</option>
        <option value="8">Animaux</option>
        <option value="9">Sport</option>
        <option value="15">Parcs</option>
      </select>
R&eacute;alisateur de la vid&eacute;o :<input type="text" name="realisateur" size="40" value="" maxlength="70">
Site web <input type="text" name="web" size="40" value="" maxlength="100">
E-mail : <input type="text" name="mail" size="40" value="" maxlength="100">
<input type="submit" name="upload" value="Téléchargez votre vidéo">
</form>
Et voici mon formulaire de récupération ds infos :
<?php
if(isset($_POST['pays']))      $id_pays=$_POST['pays'];
else      $id_pays="";

if(isset($_POST['critere']))      $id_critere=$_POST['critere'];
else      $id_critere="";

if(isset($_POST['titre_video']))      $titre_video=$_POST['titre_video'];
else      $titre_video="";

if(isset($_POST['realisateur']))      $realisateur=$_POST['realisateur'];
else      $realisateur="";

if(isset($_POST['web']))      $web=$_POST['web'];
else      $web="";

if(isset($_POST['mail']))      $mail=$_POST['mail'];
else      $mail="";

$date  = date("ymd");
$heure = date("His");

$nom= $date."-".$heure;
echo "Référence de votre vidéo : $nom";

if( isset($_POST['upload']) )
{
    $content_dir = '../upload_video/';

    $tmp_file = $_FILES['fichier']['tmp_name'];

    if( !is_uploaded_file($tmp_file) )
    {
        exit("Le fichier est introuvable");
    }

    $type_file = $_FILES['fichier']['type'];

    if( !strstr($type_file, 'mov') && !strstr($type_file, 'flv') && !strstr($type_file, 'avi') )
    {
        exit("Le fichier n'est pas une vidéo");
    }

    $name_file = $_FILES['fichier']['name'];

    if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
    {
        exit("Impossible de copier le fichier dans $content_dir");
    }

    echo "Le fichier a bien été enregistré";
}

$db = mysql_connect('localhost', 'root', '')  or die('Erreur de connexion '.mysql_error()); 
mysql_select_db('bdd',$db)  or die('Erreur de selection '.mysql_error());
  
$sql = "INSERT INTO video (id_video,id_pays,id_critere,video,titre_video,realisateur,web,mail) VALUES ('".mysql_real_escape_string('')."','".mysql_real_escape_string($id_pays)."','".mysql_real_escape_string($id_critere)."','".mysql_real_escape_string($video)."','".mysql_real_escape_string($titre_video)."','".mysql_real_escape_string($realisateur)."','".mysql_real_escape_string($web)."','".mysql_real_escape_string($mail)."')";
      
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

mysql_close();

?>

ViPHP
ViPHP | 3300 Messages

17 juin 2009, 22:07

page html

Code : Tout sélectionner

<input type="file" name="fichier" size="30">
fichier php

Code : Tout sélectionner

$tmp_file = $_FILES['fichier']['tmp_name'];
Tu ne va pas chercher le bon fichier, donc c'est pas tellement étonnant qu'il ne le trouve pas :)
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

18 juin 2009, 09:03

Je comprends pas pourquoi tu dis que je ne vais pas chercher le bon fichier.
Je le nomme "fichier".

ViPHP
ViPHP | 3300 Messages

18 juin 2009, 09:34

ah, oui tout à fait, j'ai bourdé :)

bon alors je suppose que tu as une erreur quelquepart peut etre le fichier est trop volumineux ou un truc du genre

tu es en error_reporting(E_ALL) ?
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

18 juin 2009, 09:48

Bon j'ai supprimé une partie du code, notamment celle qui met que le fichier est introuvable !
Maintenant je me retrouve avec : "L'extension de votre fichier n'est pas acceptée !"
J'ai essayé de mettre des points avant, bref ça change rien !
if( isset($_POST['upload']) ) // si formulaire soumis
{
    $content_dir = '../upload/'; // dossier où sera déplacé le fichier

    $tmp_file = $_FILES['fichier']['tmp_name'];

// on vérifie maintenant l'extension
    $type_file = $_FILES['fichier']['type'];

    if( !strstr($type_file, 'flv') && !strstr($type_file, 'mov') && !strstr($type_file, 'avi') )
    {
        exit("L'extension de votre fichier n'est pas acceptée !");
    }
	
	$nom .= ".".pathinfo($_FILES['fichier']['name'], PATHINFO_EXTENSION);

    // on copie le fichier dans le dossier de destination
    $name_file = $_FILES['fichier']['name'];

    if( !move_uploaded_file($tmp_file, $content_dir . $nom) )
    {
    exit("Impossible de copier le fichier dans $content_dir");
    }

ViPHP
ViPHP | 3300 Messages

18 juin 2009, 09:49

ah, oui tout à fait, j'ai bourdé :)

bon alors je suppose que tu as une erreur quelquepart peut etre le fichier est trop volumineux ou un truc du genre

tu es en error_reporting(E_ALL) ?
?
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

18 juin 2009, 10:03

Je n'utilise pas, pcq je connais pas, le : error_reporting(E_ALL)

ViPHP
ViPHP | 3300 Messages

18 juin 2009, 12:01

Je n'utilise pas, pcq je connais pas, le : error_reporting(E_ALL)
oui et bien serait temps de commencer, tu le coles en haut de ton fichier principal, et tu regardes les erreurs et tu les coriges, je te parie qu'une fois que tu as tout corrigé, tout marche
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

19 juin 2009, 17:26

Je l'ai mis là, mais j'ai rien de nouveau...
<?php

error_reporting(E_ALL);

if(isset($_POST['pays']))      $id_pays=$_POST['pays'];
else      $id_pays="";
J'ai rajouté un
print_r($_FILES['fichier']);
Et voilà le résultat :
Array ( [name] => casinochatelguyon01.flv [type] => [tmp_name] => [error] => 1 [size] => 0 ) L'extension de votre fichier n'est pas acceptée !

ViPHP
ViPHP | 3300 Messages

20 juin 2009, 15:01

error 1 et le tmp_name n'est pas setté, je sais plus ce que ca veut dire mais clairement c'est la raison de ton probleme php.net devrait te dire ce qui va pas maintenant qu'on a pointé le doigt dessus clairement.
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

20 juin 2009, 15:50

Salut,
What is it php.net ?

Eléphant du PHP | 65 Messages

20 juin 2009, 16:11

What is it php.net ?
C'est le site référence PHP.
Au sujet des erreurs de chargement de fichiers, tu vas trouver ça :
http://fr.php.net/manual/fr/features.fi ... errors.php

Fred

Eléphant du PHP | 287 Messages

20 juin 2009, 16:17

Merci je vais regarder ça

ViPHP
ViPHP | 3300 Messages

22 juin 2009, 21:53

so?
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 287 Messages

23 juin 2009, 08:36

Bonjour,
J'ai pas trouvé de solution ou même d'explication à mon problème sur php.net
Merci de votre aide