« Succès ! »
, 1 => « le dossier téléchargé dépasse la directive d'upload_max_filesize dans php.ini »
, le => 2 « le dossier téléchargé dépasse la directive de MAX_FILE_SIZE qui a été spécifiée sous la forme de HTML »
, le => 3 « le dossier téléchargé seulement a été partiellement téléchargé »
, le => 4 « aucun dossier a été téléchargé »
, => 6 « manquant une chemise provisoire »
, le => 7 « ne peut pas écrire le dossier au disque »
)
;
// S'IL Ne Y A RIEN DANS $_POST, A MIS VERS LE HAUT LA FORME POUR L'ENTRÉE
si (vider ($_POST))
{
? >
Dossiers de téléchargement
Results: File Upload\n";
// ACTIVATE THIS TO SEE WHAT IS COMING THROUGH
// echo ""; var_dump($_FILES); var_dump($_POST); echo " \n";
// ITERATE OVER THE CONTENTS OF $_FILES
foreach ($_FILES as $my_uploaded_file)
{
// SKIP OVER EMPTY SPOTS - NOTHING UPLOADED
$error_code = $my_uploaded_file["error"];
if ($error_code == 4) continue;
// SYNTHESIZE THE NEW FILE NAME
$f_type = trim(strtolower(end (explode( '.', basename($my_uploaded_file['name'] )))));
$f_name = trim(strtolower(current(explode( '.', basename($my_uploaded_file['name'] )))));
$my_new_file = getcwd() . '/' . $uploads . '/' . $f_name . '.' . $f_type;
$my_file = $uploads . '/' . $f_name . '.' . $f_type;
// OPTIONAL TEST FOR ALLOWABLE EXTENSIONS
if (!in_array($f_type, $file_exts)) die("Sorry, $f_type files not allowed");
// IF THERE ARE ERRORS
if ($error_code != 0)
{
$error_message = $errors[$error_code];
die("Sorry, Upload Error Code: $error_code: $error_message");
}
// GET THE FILE SIZE
$file_size = number_format($my_uploaded_file["size"]);
// IF THE FILE IS NEW (DOES NOT EXIST)
if (!file_exists($my_new_file))
{
// IF THE MOVE FUNCTION WORKED CORRECTLY
if (move_uploaded_file($my_uploaded_file['tmp_name'], $my_new_file))
{
$upload_success = 1;
}
// IF THE MOVE FUNCTION FAILED
else
{
$upload_success = -1;
}
}
// IF THE FILE ALREADY EXISTS
else
{
echo " $my_file already exists.\n";
// SHOULD WE OVERWRITE THE FILE? IF NOT
if (empty($_POST["overwrite"]))
{
$upload_success = 0;
}
// IF WE SHOULD OVERWRITE THE FILE, TRY TO MAKE A BACKUP
else
{
$now = date('Y-m-d');
$my_bak = $my_new_file . '.' . $now . '.bak';
if (!copy($my_new_file, $my_bak))
{
echo " Attempted Backup Failed!\n";
}
if (move_uploaded_file($my_uploaded_file['tmp_name'], $my_new_file))
{
$upload_success = 2;
}
else
{
$upload_success = -1;
}
}
}
// REPORT OUR SUCCESS OR FAILURE
if ($upload_success == 2) { echo " It has been overwritten.\n"; }
if ($upload_success == 1) { echo " $my_file has been saved.\n"; }
if ($upload_success == 0) { echo " It was NOT overwritten.\n"; }
if ($upload_success < 0) { echo " ERROR: $my_file NOT SAVED - SEE WARNING FROM move_uploaded_file() COMMAND\n"; }
if ($upload_success > 0)
{
bytes de $file_size d'écho les « ont téléchargé. \ n » ;
si (! chmod ($my_new_file, 0755))
{
écho « le chmod (0755) A ÉCHOUÉ : fileperms () = « ;
substr d'écho (sprintf (« %o », fileperms ($my_new_file)), -4) ;
}
écho « Voir le dossier $my_file \ n " ;
}
EXTRÉMITÉ FOREACH ITERATOR DE // - CHAQUE ITÉRATION TRAITE UN DOSSIER
}
}
|