Bonjour,
est-ce possible d'autoriser l'ecoute d'un fichier mp3 sur un site internet mais d'en interdire le telechargement ?
<?php
function chiffre($texte)
{
$key = 'cle_choisie_pour_encrypter_et_decrypter';
$iv_size = mcrypt_get_iv_size(MCRYPT_XTEA, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
return base64_encode(mcrypt_encrypt(MCRYPT_XTEA, $key, $texte, MCRYPT_MODE_ECB, $iv));
}
function dechiffre($texte)
{
$texte = base64_decode($texte);
$key = 'cle_choisie_pour_encrypter_et_decrypter';
$iv_size = mcrypt_get_iv_size(MCRYPT_XTEA, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$decrypt = mcrypt_decrypt(MCRYPT_XTEA, $key, $texte, MCRYPT_MODE_ECB, $iv);
return $decrypt;
}
?>
<object type="application/x-shockwave-flash" data="dewplayer.swf?mp3=<?php echo $value['lien']; ?>" width="200" height="20" id="dewplayer">
<param name="wmode" value="transparent" />
<param name="movie" value="dewplayer.swf?mp3=<?php echo $value['lien']; ?>" />
</object>
En regardant dans le code source j'ai bien le lien et le chemin du mp3 qui s'affiche et grace a dewplayer l'internaute peut ecouter le fichier.<?php
function chiffre($texte)
{
$key = 'cle_choisie_pour_encrypter_et_decrypter';
$iv_size = mcrypt_get_iv_size(MCRYPT_XTEA, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
return base64_encode(mcrypt_encrypt(MCRYPT_XTEA, $key, $texte, MCRYPT_MODE_ECB, $iv));
}
$fichier = "/mp3/lemp3aecouter.mp3";
?>
<object type="application/x-shockwave-flash" data="player_mp3_maxi.swf" width="200" height="20">
<param name="movie" value="player_mp3_maxi.swf" />
<param name="FlashVars" value="mp3=/player.php?id=<?php echo chiffre($fichier);?>" />
</object>
Dans le fichier player.php
function dechiffre($texte)
{
$texte = base64_decode($texte);
$key = 'cle_choisie_pour_encrypter_et_decrypter';
$iv_size = mcrypt_get_iv_size(MCRYPT_XTEA, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$decrypt = mcrypt_decrypt(MCRYPT_XTEA, $key, $texte, MCRYPT_MODE_ECB, $iv);
return $decrypt;
}
$file = $_GET['id'];
$file = dechiffre($file);
readfile($file);
A toi d'adapter ensuite ...