Voilà,
je voudrais qu'après paiement et validation de l'achat de mon programme
en-ligne le client puisse télécharger un fichier. Petit problème: une
fois que le client à acheter mon programme il peut mémorisé sans aucun
problème le lien et le redistribuer (mon programme ne comporte aucun
sécurité: licences, serial etc...) Comment faire pour qu'il puisse
télécharger un fichier sans avoir le lien.
Je sais que cette question est très vague mais pouvez-vous essayer de
répondre n'hésitez pas à me faire savoir s'il manque des éléments dans
mon message.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
clifden
Je sais que cette question est très vague mais pouvez-vous essayer de répondre n'hésitez pas à me faire savoir s'il manque des éléments dans mon message.
La solution est de fabriquer un lien qui est: ** ou valable quelques minutes ** ou valable une seule fois
qui serait du type: download.php?id_item=...&hash=...
** Méthode simple: Pour faire un hash qui ne sera valable que quelques minutes:
fabrication du hash: $hash=md5($id_item.$donnee_privee.date('d/m/Y H:i'));
Tu verifies ensuite le hash de la manière suivante:
$hash=$_GET['hash']; $okúlse; for ($i=0;($i<10)&&($ok=úlse);$i++) { // lien ne date pas de plus de 10mn $hash2=md5($id_item.$donnee_privee.date('d/m/Y H:i',mktime()-60*$i)); if ($hash2==$hash) $ok=true; }
if ($ok) { // download! ... }
** Méthode plus complexe: Une classe php que j'ai codé qui permet de gerer un lien valide pour * un certain nombre d'utilisation * un certain temps dispo sur: http://www.phpclasses.org/browse/package/1451.html
Je sais que cette question est très vague mais pouvez-vous essayer de
répondre n'hésitez pas à me faire savoir s'il manque des éléments dans
mon message.
La solution est de fabriquer un lien qui est:
** ou valable quelques minutes
** ou valable une seule fois
qui serait du type: download.php?id_item=...&hash=...
** Méthode simple:
Pour faire un hash qui ne sera valable que quelques minutes:
fabrication du hash:
$hash=md5($id_item.$donnee_privee.date('d/m/Y H:i'));
Tu verifies ensuite le hash de la manière suivante:
$hash=$_GET['hash'];
$okúlse;
for ($i=0;($i<10)&&($ok=úlse);$i++) { // lien ne date pas de plus de 10mn
$hash2=md5($id_item.$donnee_privee.date('d/m/Y H:i',mktime()-60*$i));
if ($hash2==$hash)
$ok=true;
}
if ($ok) { // download!
...
}
** Méthode plus complexe:
Une classe php que j'ai codé qui permet de gerer un lien valide pour
* un certain nombre d'utilisation
* un certain temps
dispo sur: http://www.phpclasses.org/browse/package/1451.html
Je sais que cette question est très vague mais pouvez-vous essayer de répondre n'hésitez pas à me faire savoir s'il manque des éléments dans mon message.
La solution est de fabriquer un lien qui est: ** ou valable quelques minutes ** ou valable une seule fois
qui serait du type: download.php?id_item=...&hash=...
** Méthode simple: Pour faire un hash qui ne sera valable que quelques minutes:
fabrication du hash: $hash=md5($id_item.$donnee_privee.date('d/m/Y H:i'));
Tu verifies ensuite le hash de la manière suivante:
$hash=$_GET['hash']; $okúlse; for ($i=0;($i<10)&&($ok=úlse);$i++) { // lien ne date pas de plus de 10mn $hash2=md5($id_item.$donnee_privee.date('d/m/Y H:i',mktime()-60*$i)); if ($hash2==$hash) $ok=true; }
if ($ok) { // download! ... }
** Méthode plus complexe: Une classe php que j'ai codé qui permet de gerer un lien valide pour * un certain nombre d'utilisation * un certain temps dispo sur: http://www.phpclasses.org/browse/package/1451.html