IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Upload video : ma vidéo ne se sauvegarde pas


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 72
    Points : 37
    Points
    37
    Par défaut Upload video : ma vidéo ne se sauvegarde pas
    Bonjour,
    petit soucis avec mon formulaire upload de video, mes videos ne s'enregistrent pas
    Voici mon formulaire :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    <form method="post" enctype="multipart/form-data" action="upload_video.php">
      <table class="tableau_formulaire" border="0" align="center" cellpadding="2" cellspacing="2">
        <tr> 
          <td class="tableau_formulaire_titre_saisie">Choisissez un Pays :</td>
          <td class="tableau_formulaire_saisie"><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></td>
        </tr>
        <tr> 
          <td class="tableau_formulaire_titre_saisie">Fichier à transf&eacute;rer 
            :</td>
          <td class="tableau_formulaire_saisie"><input type="file" name="video" size="30"></td>
        </tr>
        <tr> 
          <td class="tableau_formulaire_titre_saisie">Donnez un titre &agrave; votre vid&eacute;o </td>
          <td class="tableau_formulaire_saisie"><input type="text" name="titre_video" size="40" value="" maxlength="70"></td>
        </tr>
        <tr> 
          <td class="tableau_formulaire_titre_saisie">Choisissez un Crit&egrave;re :</td>
          <td class="tableau_formulaire_saisie"><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></td>
        </tr>
        <tr>
          <td class="tableau_formulaire_titre_saisie">R&eacute;alisateur de la vid&eacute;o :</td>
          <td valign="bottom" class="tableau_formulaire_saisie"><input type="text" name="realisateur" size="40" value="" maxlength="70"></td>
        </tr>
        <tr>
          <td class="tableau_formulaire_titre_saisie">Site web :</td>
          <td valign="bottom" class="tableau_formulaire_saisie"><input type="text" name="web" size="40" value="" maxlength="100"></td>
        </tr>
        <tr>
          <td class="tableau_formulaire_titre_saisie">E-mail :</td>
          <td valign="bottom" class="tableau_formulaire_saisie"><input type="text" name="mail" size="40" value="" maxlength="100"></td>
        </tr>
        <tr>
          <td class="tableau_formulaire_titre_saisie">&nbsp;</td>
          <td valign="bottom" class="tableau_formulaire_saisie"><input type="submit" name="upload" value="Téléchargez votre vidéo"></td>
        </tr>
      </table>
    </form>

    Et voici mon fichier upload_video.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    <?php
    // On commence par récupérer les champs 
    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['video']))      $video=$_POST['video'];
    else      $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="";
     
    #Enregistrement de la date et heure
    $date  = date("ymd");
    $heure = date("His");
     
    #Ajout de la date et l'heure au nom de fichier
    $nom= $date."-".$heure;
    	echo "Référence de votre vidéo : $nom";
     
    if( isset($_POST['upload']) ) // si formulaire soumis
    {
        $content_dir = 'upload_video/'; // dossier où sera déplacé le fichier
     
        $tmp_file = $_FILES['video']['tmp_name'];
     
    // on vérifie maintenant l'extension
    //$type_file = $_FILES['fichier']['type'];
     
    //$extensions_valides = array('flv','avi','mov');
    //$extension_upload = strtolower(pathinfo($_FILES['fichier']['name'],PATHINFO_EXTENSION));
     
    //if(!in_array($extension_upload, $extensions_valides)) {
    //    exit("L'extension de votre fichier n'est pas acceptée !");
    //}
     
    	$nom .= ".".pathinfo($_FILES['video']['name'], PATHINFO_EXTENSION);
     
        // on copie le fichier dans le dossier de destination
        $name_file = $_FILES['video']['name'];
     
        //if( !move_uploaded_file($tmp_file, $content_dir . $nom) )
       // {
        //exit("Impossible de télécharger votre vidéo dans $content_dir");
        //}
    	echo '<div class="nbr_photo">';
    	echo 'Votre vidéo a été enregistrée avec succès';
    	echo '</div>';
    }
     
    // Aucun champ n'est vide, on peut enregistrer dans la table 
    $db = mysql_connect('localhost', 'root', '')  or die('Erreur de connexion '.mysql_error());
     
    // sélection de la base  
    mysql_select_db('vol',$db)  or die('Erreur de selection '.mysql_error()); 
     
    // on écrit la requête sql 
    $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)."')"; 
     
    // on insère les informations du formulaire dans la table 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
     
    mysql_close();  // on ferme la connexion 
    ?>
    Si quelqu'un a une idée, je suis preneur...

  2. #2
    Membre habitué Avatar de Colbix
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    266
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 266
    Points : 150
    Points
    150
    Par défaut
    Il te met une erreur quand tu upload ?

    ps : je ne penses pas que ce soit la meilleur place pour ton post...
    Problème résolu ? N'oubliez pas le bouton ainsi que le "Pertinent". Ça fait du bien au forum.

  3. #3
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Bonsoir

    Il faut que tu déplace ton fichier lors du traitement avec move_uploaded_file, tu l'as dans le code mais cette partie est en commentaire... Ton fichier est placé dans un répertoire temporaire lors de l'upload, à la fin de l'exécution du script, ce fichier est supprimé, donc perdu si tu ne l'as pas déplacé...

    Regarde la FAQ : http://php.developpez.com/faq/?page=...ichiers_upload
    Vous souhaitez participer à la rubrique (X)HTML/CSS, contactez moi.
    débutez avec les CSS
    Pas de MP pour des questions techniques ! Mode d'emploi du forum ; Règles ; Pensez à la balise code ; Pas de SMS !
    Votez pour les messages qui vous ont aidés...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 72
    Points : 37
    Points
    37
    Par défaut
    J'ai apporté quelques modifs, mais j'ai des erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    <?php
    //On commence par récupérer les champs 
    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['video']))      $video=$_POST['video'];
    else      $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="";
     
    #Enregistrement de la date et heure
    $date  = date("ymd");
    $heure = date("His");
     
    #Ajout de la date et l'heure au nom de fichier
    $nom= $date."-".$heure;
    echo "Référence de votre vidéo : $nom";
     
    if( isset($_POST['upload']) ) // si formulaire soumis
    {
    $content_dir = 'upload_video/'; // dossier où sera déplacé le fichier
     
    $tmp_file = $_FILES['video']['tmp_name'];
     
    //on vérifie maintenant l'extension
    $type_file = $_FILES['fichier']['type'];
     
    $extensions_valides = array('flv','avi','mov');
    $extension_upload = strtolower(pathinfo($_FILES['fichier']['name'],PATHINFO_EXTENSION));
     
    if(!in_array($extension_upload, $extensions_valides)) {
    exit("L'extension de votre fichier n'est pas acceptée !");
    }
     
    $nom .= ".".pathinfo($_FILES['video']['name'], PATHINFO_EXTENSION);
     
    //On copie le fichier dans le dossier de destination
    $name_file = $_FILES['video']['name'];
     
    if( !move_uploaded_file($tmp_file, $content_dir . $nom) )
    {
    exit("Impossible de télécharger votre vidéo dans $content_dir");
    }
    	echo '<div class="nbr_photo">';
    	echo 'Votre vidéo a été enregistrée avec succès';
    	echo '</div>';
    }
     
    // Aucun champ n'est vide, on peut enregistrer dans la table
    $db = mysql_connect('localhost', 'root', '')  or die('Erreur de connexion '.mysql_error());
     
    // sélection de la base  
    mysql_select_db('voyagez_vol',$db)  or die('Erreur de selection '.mysql_error());
     
    // on écrit la requête sql 
    $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)."')"; 
     
    // on insère les informations du formulaire dans la table 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
     
    mysql_close();  // on ferme la connexion 
    ?>
    Voici mes erreurs :
    Référence de votre vidéo : 090320-143224
    Notice: Undefined index: fichier in ..\..\..\site\connect\upload_video.php on line 39

    Notice: Undefined index: fichier in ..\..\..\site\connect\upload_video.php on line 42
    L'extension de votre fichier n'est pas acceptée !
    Pourtant je teste en uploadant un fichier .flv

  5. #5
    Membre averti Avatar de johweb
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Points : 367
    Points
    367
    Par défaut
    Regarde bien, tu as mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $type_file = $_FILES['fichier']['type'];
     
    $extensions_valides = array('flv','avi','mov');
    $extension_upload = strtolower(pathinfo($_FILES['fichier']['name'],PATHINFO_EXTENSION));
    Peut-être qu'avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $type_file = $_FILES['video']['type'];
     
    $extensions_valides = array('flv','avi','mov');
    $extension_upload = strtolower(pathinfo($_FILES['video']['name'],PATHINFO_EXTENSION));
    Ca devrait mieux marcher...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Video] Caméra vidéo, Firewire et Windows
    Par Ti-Pou dans le forum Vidéo
    Réponses: 7
    Dernier message: 15/02/2007, 22h46
  2. Réponses: 3
    Dernier message: 13/11/2006, 15h58
  3. Upload 1 fichier,seulement son nom et pas toute l'adresse
    Par nebil dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 12/04/2006, 15h05
  4. XMLEncoder ne sauvegarde pas la donnée d'un PlainDocument.
    Par mitje dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 27/01/2006, 04h06
  5. [Upload] upload video
    Par corsamobile dans le forum Langage
    Réponses: 11
    Dernier message: 09/01/2006, 13h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo