Bonjour,
C'est faisable en utilisant header.
Le lien de téléchargement pointe sur un fichier nommé download.php par exemple et dans ce fichier tu teste la session et tu envoi le fichier à télécherger via un header.
Voici un exemple :
<?php session_start();
if (empty($_SESSION['ta_session']))
{
echo "Vous ne pouvez pas télécharger le fichier sans identification !<br />";
echo "Merci de bien vouloir vous identifier. <br />";
}
else
{
$file="chemin/fichier.mpg";
$nom_fichier = substr(strrchr($file, "/"), 1);
header("Content-disposition: attachment; filename=".$nom_fichier);
header("Content-Type: application/octet-stream");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($file));
header("Pragma: no-cache");
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Expires: 0");
readfile($file);
}
?>
Cordialement.