[RESOLU] masquer l'URL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] masquer l'URL

Re: masquer l'URL

par zeus » 15 oct. 2015, 20:30

Si ton soucis, c'est que l'utilisateur télécharge le document, je pense qu'il faut que tu revois le principe même du web.
Quand tu navigues sur internet (par exemple, sur cette page), elle est d'abord téléchargée sur ton poste, puis affichée sur ton poste.
Du coup, si tu cherches, tu la retrouveras.

Après, si tu proposes toi même le téléchargement d'une ressource de ton site (comme le montre ton premier code), tu ne pourras pas contrôler ce que l'utilisateur en fait.
Les seules solutions sont celles proposées par @rthur : les DRM pour bloquer l'ouverture du fichier téléchargé, ou le watermarking pour le responsabiliser sur la diffusion de ce contenu téléchargé.

Mais l'information importante à retenir, c'est que s'il peux l'ouvrir à un instant T, il l'a déjà téléchargé localement.

Re: masquer l'URL

par william539 » 15 oct. 2015, 18:39

à Mega
En fait c'est un formulaire tout simple en HTML pour tester tel que:
<body>
<h1>LISTE DES ELEARNINGS</h1>

<form name="monformulaire" method="get" action="download02.php" >

<input type="radio" name="id" value="1">La bactérie<BR /><BR />
<input type="radio" name="id" value="2">La Grippe<BR /><BR />
<input type="radio" name="id" value="3">La Gale<BR /><BR />
<input type="radio" name="id" value="4">Hygiène corporelle<BR /><BR />
<input type="radio" name="id" value="5">Les précautions standards<BR /><BR />
<input type="submit" value="Envoyer">
</form>
</body>
Le formulaire en php est déjà sur le forum

BàV

Re: masquer l'URL

par Megadeth » 15 oct. 2015, 14:56

Re,

L'idée c'est de remplacer :
http://www.monsite.be/download.php?id=15
par
http://www.monsite.be/download.php

Si aucune variable n'est postée, on a un message d'erreur sinon la variable id est postée, elle a la valeur 15 et je peux traiter cette donnée.

Dans le formulaire il faut changer la method GET par POST ou la définir si ce n'était pas le cas.
Dans la page de download on récupère l'id posté.
Il faut effectivement changer les GET en POST mais pas que, ça dépend du code, si on peut avoir le code ;)

Mega
;)

Re: masquer l'URL

par william539 » 15 oct. 2015, 14:26

à Megadeth: pourrais-je en savoir plus sur la solution avec POST? J'avais essayé de remplacé GET par POST dans le deux fichiers (html et php, mais ça n'a pas marché.

à Arthur: il s'agit de fichier HTML avec CSS images, js; c'est en fait des genres de videos faites avec Captivate6

Re: masquer l'URL

par @rthur » 15 oct. 2015, 11:31

le résultat n'est pas satisfaisant car le fichier est chargé chez l'utilisateur dans les téléchargements et donc réutilisable.
De quels fichiers est-il question ?
- De tes pages HTML (avec CSS, images, js...) ?
- Ou de fichier type PDF ?

Si il s'agit de fichiers PDF, il y a 2 solutions :
- Mettre des DRM, mais ça va te couter cher et c'est une galère pour tes clients/utilisateurs
- Faire du tatouage/watermarking, c'est à dire pour chaque PDF envoyé tu ajoute dans le document des infos sur l'utilisateur (nom/prénom/email) pour limiter le fait qu'il le partage largement.

Re: masquer l'URL

par Megadeth » 15 oct. 2015, 09:56

Bonjour,

C'est pour éviter que les membres se partagent les docs, c'est bien ça ? C'est vrai que l'idéal c'est la gestion par droits.
Maintenant pourquoi ne pas gérer la chose avec une sorte de clef de validation ? ou mieux de gérer cela sans id en GET mais en POST
Du coup on appelle le fichier de download seul.
J'avais fait quelque chose de la sorte et ça marchait bien en méthode POST.

Mega
;)

Re: masquer l'URL

par or 1 » 14 oct. 2015, 22:05

il n'y a aucun moyen d'empecher quelqu'un qui demande une url par son navigateur, et sauver la ressource ensuite.
ce qui peut être emebetant, c'est si quelqu'un qui a fait la démarche pour avoir accès à une ressource, obtent une url et partage cette url avec d'autres, et ces autres personnes peuvent accèder à la ressource. il faut donc verifier dans download.php que la personne a les droits nécessaires, mais ensuite; on n'a plus le controle de ce qui est fait.

Re: masquer l'URL

par claude539 » 14 oct. 2015, 21:45

bonsoir, pas de problème à rester sur le forum que je consulte régulièrement. Je reprends ma demande d'aide autrement.
L'accès aux elearnings, cours de formation, est protégé par login et mdp. je clique sur un lien et la page demandée s'affiche avec l'url visible dans la barre d'adresse. on copie cette adresse et on la communique à qui veut ce qui est dommageable. Il faudrait donc que la page s'affiche mais que l'url ne soit pas réutilisable du genre http://www.monsite.be/download.php?id=15.
Avec ma façon de procédé expliquée avant, l'adresse url n'est pas copiable mais le résultat n'est pas satisfaisant car le fichier est chargé chez l'utilisateur dans les téléchargements et donc réutilisable. Me suis-je bien expliqué? une aide est nécessaire.
Pour accéder à la bdd ou sont stockés les url de fichier, j'utilise un formulaire à cases à cocher, bouton radio, qui appelle download.php qui lui sélectionne le fichier suivant le n° id du formulaire, pas de soucis jusque là.
Bien à Vous

Re: masquer l'URL

par @rthur » 14 oct. 2015, 09:46

Bonjour,

Pourquoi ne pas fournir les renseignements complémentaires ici ?
C'est le principe même d'un forum et son principal avantage où on peut être plusieurs à intervenir pour trouver une solution. :-)

De ce que je comprends, l'url est bonne mais c'est le nom du fichier qui est incorrecte une fois téléchargé c'est ça ?

Re: masquer l'URL

par william539 » 14 oct. 2015, 09:22

Déjà merci de votre réponse rapide. Je vous laisse mon email pour des renseignements complémentaire, je comprends que ma demande est assez confuse. Le but est de dissimuler le vrai url pour celui qui le reçoit!
Bien à vous
[email protected] :?

Re: masquer l'URL

par Megadeth » 13 oct. 2015, 23:11

Bonsoir,

J'veux bien vous aider mais j'ai pas tout compris à vrai dire.

Mega
;)

masquer l'URL

par william539 » 13 oct. 2015, 15:05

Bonjour, Mes abonnés, après login et mdp, peuvent télécharger des fichiers sous forme de elearning, le problème c'est qu'ils reçoivent l'url complète qui peur être stockées ou cédées, gros soucis. Je voudrais que l'url deviennent :www.monsite.be/download.php?id=12 ou xx.
J'utilise pour cela:
<?php 
if(!empty($_GET["id"])){
try
{
	$db = new PDO('mysql:host=mysql.monsite.be;dbname=abihhbe','william','csxxxxx');
	$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
	$msg='ERREUR PDO dans' .$e->getFile(). 'L.' .$e->getLine(). ':' .$e->getMessage();
	die($msg);
}
$sql = 'SELECT contenu FROM elearning WHERE id='.$_GET["id"];
$req = $db->query($sql);
if($d = $req->fetch(PDO::FETCH_OBJ)){
if($d ){
        header("Content-type: application/force-download");
        header("Content-Length: ".filesize($d->contenu));
        header("Content-Disposition: attachment; filename=".basename($d->contenu));
        header("Cache-Control: no-cache, must-revalidate");
		readfile($d->contenu);
}		
    }
	}
	?>
ça fonctionne mais le fichier est stocké dans les téléchargements de l'abonné sous forme de file:///C:/Users/jean/Downloads/monfichier.html ce qui n'est pas le but.
Je voudrais donc que le serveur envoie le fichier mais que l'url reste http://www.monsite.be/download.php?id=15
J'espère avoir été clair. quelqu'un peut-il m'aider?
D'avance merci
William539