Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/05/2011, 11h36   #1
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
Par défaut Probleme protection par mot de passe

Bonjour, je viens de réaliser un formulaire en html qui permet d'uploader vers un dossier (/upload). Une fois uploadé je souhaiterais que par le lien générer (http://localhost/upload/'nomdelimage.jpg') l'utilisateur arrive sur une page qui lui demande de rentre un mot de passe, qui aura été saisi ou non préalablement dans un formulaire (si checkbox coché, un <input type="password" id="mdp"> apparait). Pourriez-vous m'aider sur la conception mais surtout sur le raisonnement à suivre?
Merci de votre aide
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 11h44   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu mets toutes tes images dans un répertoire dont l'accès est interdit par .htaccess

Dans ta base de données, tu stockes le couple "nom du fichier / mot de passe".

Tu fais une page PHP qui est chargé de controler le mot de passe dans la base et de distribuer le fichier, à laquelle on accède par un lien du genre page.php?fichier=toto.jpg

Code :
1
2
3
4
5
6
7
8
9
if (!isset($_POST['password'])) {
// formulaire demandant le mot de passe
}
else {
// verification mot de passe dans la base
    if (mot_de_passe_ok) {
         readfile($fichier_demandé);
   }
}
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 11h48   #3
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
D'accord merci de votre aide. Mais comment fait-on pour que lorsque l'utilisateur clique sur son lien générer, il tombe sur une page sécurisée et non la page ou son image est stocké ? Merci
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 12h28   #4
Membre du Club
 
Homme
Développeur Web
Inscription : avril 2011
Messages : 36
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2011
Messages : 36
Points : 55
Points : 55
Il suffit de générer un lien qui pointe sur la page de vérification du mot de passe (soit la page page.php?fichier=toto.jpg avec l'exemple ci-dessus).
westdigit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 13h06   #5
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
D'accord, mais la page généré renverra l'utilisateur sur une page blanche avec un input type=password, l'utilsateur saisira son mot de passe (mot de passe qu'il aura inscrit dans le formulaire d'upload) et si le mot de passe est bon il sera renvoyé sur son image. Mais je n'ai pas compris votre dernier message. Merci
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 13h08   #6
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
Une fois l'upload fait un lien apparaitra du genre : http://localhost/Projet/upload/4de37a9776ac7.jpg mais comment fait-on pour que ce lien renvoie a la page d'authentification ? Merci
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 14h41   #7
Membre du Club
 
Homme
Développeur Web
Inscription : avril 2011
Messages : 36
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2011
Messages : 36
Points : 55
Points : 55
Voici les étapes que tu dois suivre :
1 - Uploader les images
2 - Générer un lien qui renvoi sur la page de vérification du mot de passe avec en paramètre le nom de l'image souhaitée exemple : http://monsite/verif.php?fichier=toto.jpg
3 - Dans le script verif.php, vérifier si le mot de passe est OK.
- Si oui alors renvoyer l'image (inspire toi de http://php.developpez.com/sources/?p...ages#imagealea)
- Si non alors afficher une page d'erreur
westdigit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 14h55   #8
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
J'ai compris le sens du lien mais comment fait-on si le paramètre choisi, ici le nom de l'image, est une variable ? Je fais alors http://monsite/identification.php?fichier=$fichier.jpg ?

Merci
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 16h33   #9
Membre du Club
 
Homme
Développeur Web
Inscription : avril 2011
Messages : 36
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2011
Messages : 36
Points : 55
Points : 55
Pour utiliser le nom du fichier pour générer ton lien tu peux procéder comme suit en admettant que $fichier contient le nom de ton fichier :
Code :
1
2
3
4
 
if($fichier != null) {
	echo '<a href="http://monsite/verif.php?fichier='.$fichier.'">Visiualiser</a>';
}
Pour récupérer le contenu de ta variable (dans le fichier verif.php)avec les exemples ci-dessus il faut procéder comme suit :
Code :
1
2
3
4
5
 
$fichier = null;
if(isset($_GET['fichier'])) {
	$fichier = $_GET['fichier'];
}
westdigit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 16h49   #10
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : mai 2011
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2011
Messages : 124
Points : 11
Points : 11
Merci de votre aide je teste tout ça ce soir !
Ercan67000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h15.


 
 
 
 
Partenaires

Hébergement Web