File "explore_arbo01.php"
Full Path: /home/analogde/www/FTP/Monsta-FTP-master/explore_arbo01.php
File size: 5.72 KB
MIME-type: text/x-php
Charset: utf-8
<?php
//$imagePath = "/home/analogde/www/PATRICE/password.docx";
$chemin = "/home/analogde/www/Document_workarea/patrice/Test";
$fichier = "picamera.pdf";
$recherche = $chemin ."/" .$fichier;
echo " ----->>> " .$recherche;
// Vérifier si le fichier existe
if (file_exists($recherche))
{
echo " Yes, il existe....";
}
else
{
echo "Fichier introuvable";
}
$directoryPath = $chemin;
// Vérifier si le chemin est valide
if (is_dir($directoryPath))
{
// Lire le contenu du répertoire
$files = scandir($directoryPath);
echo "<h1>Liste des fichiers dans le répertoire : $directoryPath</h1>";
echo "<ul>";
$fileList = [];
// Parcourir les fichiers
foreach ($files as $file)
{
// Ignorer les entrées spéciales "." et ".."
if ($file !== "." && $file !== "..")
{
$fileList[] = $file;
echo "<li>$file</li>";
}
}
echo "</ul>";
/*
RC parallels.docx
capture_IC616.jpg
capture_IC616_v01.jpg
capture_IC616_v02.jpg
capture_IC616_v03.jpg
picamera.pdf
*/
$v = "capture_IC616.jpg";
// Extraire la partie du nom sans extension
$baseName = pathinfo($v, PATHINFO_FILENAME);
// Tableau pour stocker les fichiers correspondants
$matchingFiles = [];
// Parcourir la liste des fichiers
foreach ($fileList as $file)
{
// Extraire la partie du nom sans extension
$currentBaseName = pathinfo($file, PATHINFO_FILENAME);
// Vérifier si le fichier partage une partie commune de nom avec le fichier de référence
if (strpos($currentBaseName, $baseName) === 0 && $currentBaseName !== $baseName)
{
$matchingFiles[] = $file;
}
}
echo "<pre>";
print_r($matchingFiles);
echo "</pre>";
// Génération des liens de téléchargement
echo "<h1>Liste des fichiers à télécharger</h1>";
echo "<ul>";
foreach ($matchingFiles as $file) {
// Générer le lien complet
$filePath = $directoryPath . "/" . $file;
// Générer un lien HTML pour chaque fichier
echo "<li><a href=\"$filePath\" download>$file</a></li>";
}
echo "</ul>";
// https://www.tutorialrepublic.com/php-tutorial/php-file-download.php
// https://learncodeweb.com/snippets/download-a-file-from-the-url-in-php/
// https://phpgurukul.com/how-to-download-a-file-in-php/
// https://stackoverflow.com/questions/27668971/downloading-a-file-from-a-php-server-via-a-website/27669176#27669176
// https://www.codexworld.com/force-download-file-php/
// https://www.geeksforgeeks.org/how-to-make-pdf-file-downloadable-in-html-link-using-php/
// https://www.w3docs.com/snippets/php/automatic-download-file.html
// https://www.geeksforgeeks.org/how-to-force-a-file-to-get-downloaded-in-php/
// https://www.w3docs.com/snippets/php/php-generate-file-for-download-then-redirect.html
// https://www.hashbangcode.com/article/force-file-download-php
// https://linuxhint.com/download_file_php/
// https://gist.github.com/MasterEx/1135904/30f2111a8c395c86c7c8f4496ac2dfd7daefae27
/*
$url = 'https://media.geeksforgeeks.org/wp-content/uploads/gfg-40.png';
// Use basename() function to return the base name of file
$file_name = basename($url);
// Use file_get_contents() function to get the file
// from url and use file_put_contents() function to
// save the file by using base name
if (file_put_contents($file_name, file_get_contents($url)))
{
echo "File downloaded successfully";
}
else
{
echo "File downloading failed.";
}
*/
$chemin = "/home/analogde/www/Document_workarea/patrice/Test/capture_IC616_v03.jpg";
$chemin = "/home/analogde/www/Document_workarea/patrice/Test/tartuffe.pdf";
$chemin = "/home/analogde/www/Document_workarea/patrice/Test/picamera.pdf";
echo "----->>> " . $chemin;
//header('Content-Type: application/octet-stream');
//header('Content-Disposition: attachment; filename="' . basename($chemin) . '"');
//header('Content-Length: ' . filesize($chemin));
// Read and output the file content
//readfile($chemin);
// 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($chemin) . '"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($chemin));
// Lire le fichier et l'envoyer au navigateur
readfile($chemin);
// Arrêter l'exécution du script
exit;*/
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($chemin));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($chemin));
ob_clean();
flush();
readfile($chemin);
exit;
$s = "capture_IC616_v03.jpg";
// 1. Supprimer l'extension du fichier
$fileWithoutExtension = pathinfo($s, PATHINFO_FILENAME);
// 2. Vérifier si la chaîne se termine par "_vxx"
if (preg_match('/_v\d{2}$/', $fileWithoutExtension)) {
echo "La chaîne \"$fileWithoutExtension\" se termine par une version (_vxx).";
} else {
echo "La chaîne \"$fileWithoutExtension\" ne se termine pas par une version (_vxx).";
}
}
else
{
echo "<p>Le chemin spécifié n'est pas un répertoire valide.</p>";
}
?>