IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Authentification et téléchargement sur un site Free...


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut Authentification et téléchargement sur un site Free...
    Bonjour à toutes et à tous!

    Je suis en train de développer un site pour un collègue. Ce site est hébergé chez Free.

    Ce site permet d'avoir accès à des téléchargements à condition que l'utilisateur ait une autorisation (identifiant + mot de passe). Bien sûr, l'accès est limité à 48 heures, la validité du compte utilisateur étant vérifiée dans la base MySQL grâce à une date de péremption du compte. Il faut donc s'assurer avant tout téléchargement que l'utilisateur soit encore dans son droit.

    Pour cela, j'ai créé des scripts PHP pour que:

    1 - L'utilisateur se connecte via un formulaire avec vérification dans la base de données MySQL de la validité du compte utilisateur

    2 - Tout lien de téléchargement comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    le-site.free.fr/download.php?file=7
    demande une vérification de la validité du compte dans la base de données et refuse ou accepte le téléchargement.

    PROBLEME:

    PHP chez Free étant en Safe Mode je me suis aperçu que les fonctions d'écriture de fichier ne fonctionnaient pas, ce qui ne permet pas le téléchargement du fichier.

    Cette technique s'avérait utile au point de vue de la gestion des utilisateurs et de la validité de leur compte.

    Mais là je suis bloqué.

    Avez-vous déjà rencontré ce problème?

    Avez-vous des solutions à me proposer? Car cela fait un moment que je me creuse et je ne trouve pas.

    Merci beaucoup.

    Olivier.

  2. #2
    Membre averti Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Points : 448
    Points
    448
    Par défaut
    Salut,
    un truc que je comprends pas bien, tu parles d'upload ou de download?? parce que si tru parles de download je vois pas le rapport avec l'ecriture de fichiers...
    mais pourquoi tu cours?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    En effet, je n'ai peut-être pas été assez clair.

    En fait, le script PHP de la page download.php vérifie dans un premier temps la validité du compte utilisateur.

    Dans un deuxième temps, et si le compte est toujours valable, le script lit dans le fichier à télécharger (download) pour écrire dans la page avec les en-tête adéquats, ce qui provoque le téléchargement:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    	header('Pragma: public');
    	header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
    	header('Cache-Control: must-revalidate, pre-check=0, post-check=0, max-age=0');
     
    	header('Content-Tranfer-Encoding: none');
     
    	header('Content-Type: application/octetstream; name="'.basename($file).'"');
    	header('Content-Disposition: attachement; filename="'.basename($file).'"');
     
    	header('Content-Length: '.$size);
     
    	$f = fopen($file, "r");
    	while (!feof ($f)) {
        $buffer = fgets($f, 2048);
        echo $buffer;
    Mais la fonction fopen() me renvoie une erreur m'indiquant que la configuration PHP des serveurs Free est en Safe Mode. Le téléchargement est donc impossible.

    J'utilise cette technique car les fichiers mot de passe .HTPASSWD d'Apache ne permettent pas la gestion de date limite de validité d'un compte utilisateur.

Discussions similaires

  1. Lien téléchargement sur un site web
    Par geek67 dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 26/04/2011, 16h28
  2. Accélérer les téléchargements sur mon site
    Par legide dans le forum Débuter
    Réponses: 2
    Dernier message: 01/02/2011, 02h37
  3. probleme de téléchargements sur mon site
    Par sermadiras nicolas dans le forum Débuter
    Réponses: 7
    Dernier message: 13/10/2008, 15h24
  4. Réponses: 35
    Dernier message: 03/04/2007, 16h32
  5. [FTP] Zone de téléchargement sécurisée sur un site.
    Par Périgord Noir dans le forum Langage
    Réponses: 1
    Dernier message: 07/11/2006, 14h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo