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

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Galerie] Upload de vidéos


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 70
    Points : 54
    Points
    54
    Par défaut [Galerie] Upload de vidéos
    Bonjour,
    actuellement je développe le site web à un copain qui est artiste ainsi l'on pourra uploader des images et vidéos d'artistes. Jusque là tout se passait pour le mieux mais je suis confronté à un problème, dans mon formulaire d'upload il existe deux champs input files et lorsque je valide le formulaire, c'est seulement l'image qui est transférée dans le dossier de destination mais dans la base de données le lien de l'image et de la vidéo y sont. je vous présente le code source de mon formulaire ainsi que le script php d'upload.

    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
    <form action="upload_mp3.php" method="post" class="one" enctype="multipart/form-data">
    <p class="member">Enregistrement audio</p>
     
    <label for="artiste">Artiste :</label>
    <input name="artiste" type="text" class="txtfield"/>
    <label for="titre">Titre :</label>
    <input name="titre" type="text" class="txtfield"/>
    <label for="temp">Durée :</label>
    <input name="temp" type="text" class="txtfield"/>
    <label for="mixage">Mixage :</label>
    <input name="mixage" type="text" class="txtfield"/>
    <label for="image"> Image: </label>
    <input type="file" id="file" name="image" />
    <input type="hidden" name="MAX_FILE_SIZE" value="200000" />
    <label for="file"> MP3: </label>
    <input type="file" id="file" name="file" />
    <input type="hidden" name="MAX_FILE_SIZE" value="8000000" />
    <br>
    <br><div align="center"><input type="submit" name="envoyer" value="Valider"></div>
    <div class="clear"></div>
    </form>


    Le script d'upload:

    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
    include "config.php";
    ?>
    <?php
    // ***** ici on récupère les données et on les stocke dans mysql
    $artiste = $_POST['artiste'];
    $titre = $_POST['titre'];
    $temp = $_POST['temp'];
    $mixage = $_POST['mixage'];
     
    if (empty($artiste))
    {
    echo 'Vous devez indiquer le nom de l artiste';
    exit();
    }
     
    if (empty($titre))
    {
    echo 'Vous devez indiquez un titre';
    exit();
    }
     
    if (empty($temp))
    {
    echo 'Vous devez inquer le temps';
    exit();
    }
     
    if (empty($mixage))
    {
    echo 'Vous devez indiquer le nom de l arrangeur ';
    exit();
    }
     
     
    //******* On renomme l'image de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple
    $dir = 'upload/';
    $ext = strtolower( pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION) );
    $file=uniqid().'.'.$ext;
     
     //**** on bouge l'image
    move_uploaded_file($_FILES['image']['tmp_name'], $dir.$file);
     
    $image = $file;
     
    //******* On renomme le fichier mp3 de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple
    $dir = 'upload/';
    $ext = strtolower( pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION) );
    $file=uniqid().'.'.$ext;
     
     
     //**** on bouge l'image
    move_uploaded_file($_FILES['file']['tmp_name'], $dir.$file);
     
    $file = $file;
     
    // on enregistre les données
    $result = mysql_query("INSERT INTO musique VALUES
    (
     '',
    '".mysql_real_escape_string($artiste)."',
    '".mysql_real_escape_string($titre)."',
    '".mysql_real_escape_string($temp)."',
    '".mysql_real_escape_string($mixage)."',
    '".mysql_real_escape_string($image)."',
    '".mysql_real_escape_string($file)."'
    )
    ");
     
     
     mysql_close($db);  // on ferme la connexion 
     
     
    	header('location: musiques.php');
    ?>
    NB: Wampserver version 2.2
    PHP Version 5.3.13
    MySQL version 5.5.24

    je débute en php alors je demande votre indulgence.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 383
    Points
    383
    Par défaut
    Quelques idées comme ça

    Il ne devrait y avoir qu'un seul MAX_FILE_SIZE et il doit être avant le input type="file"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="MAX_FILE_SIZE" value="zzzz" />
    Que donne un print_r($_FILES) placé dans le script d'upload ?

    Il faudra peut être utiliser 2 au lieu de 2 champs file avec des noms différents ( et du coup le $_FILES )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="file" id="file" name="file[]"  />
    Quand ca fonctionnera il faudra revoir le côté sécurité : type mime lors de l'upload, dossier upload inaccessible au public, pdo au lieu mysql_

    Et ça tu pourra l'enlever


  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Merci d'avance, je fonce modifier et je vous informe de la suite

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 01/03/2013, 15h06
  2. Formulaire avec upload de vidéo
    Par achio350 dans le forum Langage
    Réponses: 1
    Dernier message: 07/12/2008, 19h43
  3. Upload de vidéos sur youtube
    Par rodgeur62 dans le forum Langage
    Réponses: 4
    Dernier message: 07/06/2008, 19h18
  4. [Upload] Uploader des vidéos sur son site web
    Par Tavarez59 dans le forum Langage
    Réponses: 4
    Dernier message: 09/04/2007, 16h44

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