Voici donc le fichier php que l'on nommera my_upload.php
<HTML><BODY><CENTER>
<?
// Taille max des fichiers (octets)
$MFS=200000;
// Répertoire de stockage
$rep="My_upload/";
if(isset($_FILES['userfile'])) {
if($_FILES['userfile']['size']>0) {
$savefile= $rep.$_FILES['userfile']['name'];
$temp = $_FILES['userfile']['tmp_name'];
if (move_uploaded_file($temp, $savefile)) { ?>
<b>Votre fichier a bien été enregistré !</b>
<BR>Nom : <?echo $_FILES['userfile']['name'];?>
<BR>Taille : <?echo $_FILES['userfile']['size'];?> o
<BR>Type : <?echo $_FILES['userfile']['type'];?>
<? } else { ?>
<b>Erreur d'enregistrement !</b>
<? }
} else { ?>
<b>Trop gros fichier !</b>
<i>( <? echo $MFS;?> octets max.)</i>
<? }
} ?>
<FORM METHOD="POST"
ENCTYPE="multipart/form-data">
<INPUT TYPE=HIDDEN NAME=MAX_FILE_SIZE
VALUE=<? echo $MFS;?>>
<INPUT TYPE=FILE NAME="userfile"><BR>
<INPUT TYPE=SUBMIT value="Enregistrer le fichier">
</FORM>
LISTE DES FICHIERS TELECHARGES
<BR><TABLE border>
<? $dir = opendir($rep);
while ($f = readdir($dir))
if(is_file($rep.$f)) { ?>
<TR>
<TH>
<A href="<? echo $rep.$f; ?>"
target="_blank"><? echo $f; ?></A>
</TH>
<TD align=right><? echo filesize($rep.$f); ?></TD>
<TD>
<? echo date("d/m/Y H:i:s",filectime($rep.$f)); ?>
</TD></TR>
<? }
closedir($dir); ?>
</TABLE>
</CENTER></BODY></HTML>
Il est important de mettre my_upload en 777 pour permettre l'écriture.
Après pour le protéger un .htaccess
Maintenant, il reste à améliorer la gestion des fichiers, en intégrant la possibilité de les effacer sans passer par le FTP, puis de limiter l'upload à certains types de fichiers...
La suite bientôt...
