vraiment très simple, je me casse les dents chez free pour le faire... ..
Et tu en as fait quoi de mes liens ?
Un exemple fonctionnel chez free avec cette
classe d'upload Il te suffit de copier le contenu du code "La classe" qui se situe en bas du lien, dans un fichier que tu nomme par exemple 'Upload_2.0.php5'.
Ensuite dans un fichier avec l'extension php5 ex : "telechargement.php5" tu copie ce code
<?php
require('Upload_2.0.php5');
// FORMULAIRE 1
// Téléchargement de photos avec contrôle anti-écrasement d'un fichier déjà existant ou renommage du fichier si un fichier de même nom est déjà existant sur le serveur, et contrôle des images.
$repertoire_destination = 'Test';
// Déclaration de la classe avec envoi des paramètres
$form_1 = new Telechargement ($repertoire_destination,'formulaire_1','photo','get_formulaire_1');
// Contrôle simple (anti écrasement) de l'existence d'un fichier de nom identique dans le répertoire de destination
//$form_1->Set_Controle_fichier ();
//Renommage du fichier si un fichier de même nom est déjà existant sur le serveur
$form_1->Set_Renomme_fichier ('incr');
// Contrôle que le fichier est effectivement une image de type gif, jpg, jpeg ou png et retourne ses dimensions dans le tableau des résultats
$form_1->Set_Controle_dimImg ();
//Téléchargement sans traitement php supplémentaire -> on spécifie un rechargement de la page suite au téléchargement en indiquant un argument non nul ex 'reload' dans la fonction d'Upload.
$form_1->Upload('reload');
// Enregistrement des messages de contrôle (si besoin)
$messages_form1 = $form_1->Get_Tab_message ();
// Enregistrement du tableau des résultats (si besoin)
$tranfert_form1 = $form_1->Get_Tab_upload ();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
<script type="text/javascript">
<!--
function Verif_attente(id_attente)
{
var id_attente = document.getElementById(id_attente);
if (typeof id_attente != 'undefined')
{
// Nettoyage de l'élément cible
var nb_noeuds = id_attente.childNodes.length;
for (var i = 0; i < nb_noeuds; i++)
{
id_attente.removeChild(id_attente.firstChild);
}
id_attente.style.fontWeight="bold";
id_attente.style.fontSize="1.5em";
var texte = 'Patientez...';
// Création du noeud texte
var noeud_texte = document.createTextNode(texte);
// Insertion du noeud texte
id_attente.appendChild(noeud_texte);
}
}
-->
</script>
<style type="text/css">
body {
font-family: Arial, Helvetica, sans-serif;
font-size:12px;
}
p, input, form {
margin:0;
padding:0;
}
</style>
</head>
<body>
<div style="width:650px;margin:auto;margin-top:50px;">
<p>Fichiers photos (png, jpg, jpeg, gif)</p>
<form enctype = "multipart/form-data" action = "<?php echo htmlspecialchars($_SERVER['PHP_SELF']).'?get_formulaire_1=1'?>" method = "post" onsubmit = "Verif_attente('message_tele')" id = "formulaire_1">
<p>
<!-- input d'identification du formulaire qui doit être passé en paramètre dans l'initialisation de la classe-->
<input type = "hidden" name = "formulaire_1" value = "1" />
<!-- Par défaut MAX_FILE_SIZE = Return_Octets(ini_get('upload_max_filesize') donc ne sert à rien en l'état. Pour limiter l'upload à une taille inférieure vous pouvez rentrez une valeur suivie de son unité, exemple $form_1->Return_Octets('500K') pour 500 kilos octets, $form_1->Return_Octets('1M') pour 1 méga octets etc. La fonction "Return_Octets" est employée pour la conversion en octets car le champ MAX_FILE_SIZE demande une valeur en octets. -->
<input type = "hidden" name = "MAX_FILE_SIZE" value = "<?php echo isset($form_1)? $form_1->Return_Octets(ini_get('upload_max_filesize')) : ''?>" />
<input name = "photo[]" type = "file" size = "70" /><br />
<input name = "photo[]" type = "file" size = "70" />
<input name = "photo[]" type = "file" size = "70" />
<input type = "submit" value = "Envoyez" style = "margin-left:5px" />
</p>
</form>
<p>
<br />Taille maximum de fichier autorisée par le serveur = <?php echo ini_get('upload_max_filesize').'o'?>. Total maximum pour l'ensemble <?php echo ini_get('post_max_size').'o'?>.
</p>
<div id = "message_tele" style="margin-top:20px;">
<?php if (!empty($messages_form1))
foreach ($messages_form1 as $num)
{
foreach ($num as $value)
echo htmlspecialchars($value).'<br />';
}
?>
</div>
</div>
<div style="margin-top:100px" >
<p>
<?php
// Lecture du tableau des résultats (se trouve ici uniquement pour la démonstration et visualiser la structue des tableaux de résultat)
if (!empty ($tranfert_form1))
{
$identifant = $tranfert_form1['identifiant'];
$champ = $tranfert_form1['champ'];
$resultat = $tranfert_form1['resultat'];//tableau à trois dimensions
echo $identifant.' :<br /><br />';
foreach ($resultat as $num => $rep)
{
foreach ($rep as $key => $value)
{
if(!empty($value['nom']))
echo 'champ '.$champ.' n° '.$num.' = '.$value['nom'].' '. $value['dim'].', téléchargé dans "'.$key.'"<br />';
}
}
} ?>
<br />
</p>
</div>
</body>
</html>
Il te suffit juste de changer $repertoire_destination pour indiquer ta valeur et c'est tout.
J'ai mis trois champs d'upload mais tu peux en supprimer.
Ensuite en cas de besoin tu peux rajouter des options : imposer un nom de destination, redimensionner des images etc.