File "OK_download03.php"

Full Path: /home/analogde/www/FTP/Monsta-FTP-master/OK_download03.php
File size: 1.54 KB
MIME-type: text/x-php
Charset: utf-8

<?php
// Chemin vers le fichier à copier
$sourceFile = 'chemin/vers/votre/fichier.ext';

$sourceFile = "93522827_016_5bab.jpg";

$sourceFile = "https://analog-design.net/2024_PHP/2024_PHP_12_11_2024/FTP/Monsta-FTP-master/93522827_016_5bab.jpg";

$sourceFile = "https://analog-design.net/2024_PHP/2024_PHP_12_11_2024/FTP/91782786_001_4fd1.jpg";

$sourceFile = "https://analog-design.net/2024_PHP/beach-g7994815fd_1920.jpg";

// Déterminer le répertoire temporaire du serveur
$serverTmp = ini_get('upload_tmp_dir') ? ini_get('upload_tmp_dir') : sys_get_temp_dir();

// Préfixe pour le nom du fichier temporaire
$filePrefix = 'upload_';

// Créer un fichier temporaire avec un nom unique
$tempFile = tempnam($serverTmp, $filePrefix);

// Copier le fichier source vers le fichier temporaire
if (copy($sourceFile, $tempFile)) {
    // Définir les en-têtes HTTP pour forcer le téléchargement
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . basename($sourceFile) . '"');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($tempFile));

    // Lire le fichier temporaire et l'envoyer au navigateur
    readfile($tempFile);

    // Supprimer le fichier temporaire après le téléchargement
    unlink($tempFile);

    // Terminer le script
    exit;
} else {
    // Si la copie échoue, afficher un message d'erreur
    echo "Erreur lors de la copie du fichier.";
}
?>