Je te donne un exemple complet fonctionnel avec deux champs (le fichier et sa catégorie) :
<?php
// Chargement de la classe
require('Classe_upload.php');
$repertoire_destination = 'Test';
//Déclaration de la classe
$up = new Telechargement($repertoire_destination,'form1','song','controle_form');
//Extensions autorisées (sans les .)
$extensions = array("mp3", "mp4","ogg");
$up->Set_Extensions_accepte ($extensions);
// Rennommage des fichiers (en mode incrémentiel) si déjà présents sur le serveur.
$up->Set_Renomme_fichier('incr');
// Téléchargement
$up->Upload();
// Enregistrement en bdd des valeurs récupérées par le post
if (isset($_POST['form1']))
{
// Récupération des valeurs du transfert de fichiers
$transfert = $up->Get_Tab_upload();
// Si un fichier a été transférer
if (!empty ($transfert))
{
// Récupération du non du fichier transféré
$resultat = $transfert['resultat'];//tableau à trois dimensions (c.f. Doc de la class pour plus de détails)
foreach ($resultat as $num => $rep)
{
foreach ($rep as $key => $value)
{
$fichier = $value['nom'];// Nom du fichier transféré
$dossier = $key; // Nom du dossier
}
}
// Récupération de tes autres valeurs
//...
// Connexion à ta bdd
//...
//exemple de requête avec mysql (protéger les valerurs par mysql_real_escape_string) ou utiliser PDO
$sql = "INSERT INTO chansons(fichier, description) VALUES('".$fichier."', '".$_POST['style']."')";
// Ligne temporaire pour vérification
echo $sql;exit;
// exécution de la requête
//...
// Rechargement de la page pour éviter un multi upload
$up->Get_Reload_page();
}
}
// Récupération des messages d'information
$resultat = $up->Get_Tab_message();
?>
<form enctype = "multipart/form-data" action = "<?php echo htmlspecialchars($_SERVER['PHP_SELF']).'?controle_form=1' ?>" method = "post">
<input type="hidden" name="MAX_FILE_SIZE" value="5242880" />
<input type="file" name="song[]" /><br />
<label for="style"> Style musical de la chanson : </label>
<select name="style" id="style" >
<option value="blues" > Blues </option>
<option value="chanson_francaise" > Chanson Française </option>
<option value="classique" id="classique" > Classique </option>
<option value="club" > Club </option>
</select>
<input type="submit" name = "form1" value="Envoyer le fichier">
</form>
<?php //affichage des résultats
if (!empty($resultat))
{
echo '<p>';
foreach ($resultat as $num)
{
foreach ($num as $value)
echo htmlspecialchars($value).'<br />';
}
echo '</p>';
}
?>
Pour que ça fonctionne tu as juste à copier le code de la classe (situé vers la fin de ce lien) et à l'enregistrer dans un fichier que tu nommeras 'Classe_upload.php' (à mettre dans le même répertoire que ton script) puis à mettre le nom de ton dossier dans la variable $repertoire_destination (2 ème ligne du code ci-dessus).