Aide htaccess base donnée

Nouveau WRInaute
Bonjour

J'ai un site internet ou j'ai une section téléchargement le problème c'est qu'en tapant url directement du fichier celui-ci peut être télécharger sans même être connecter.
Comment faire afin qu'il y est que les inscrits sur le site qui on accès au téléchargement ?
La page téléchargement est visible une fois connecter, dessus il y a lien qui une fois ou l'on clic dessus le téléchargement commence.
Je sais pas si j'ai été assez clair dans mon problème et les explications.

Merci par avance de votre aide.

@+ Filou
 
WRInaute accro
Il ne faut pas proposer directement l'url du ficher a télé-charger mais l'accès a un script qui avec un paramètre permettra d'envoyer le flux de télé-chargement une fois l'utilisateur reconnu comme valable.
 
WRInaute impliqué
sans l'adresse du site, et donc sans savoir comment la partie membres a été codée, c'est bien difficile d'en dire plus.
 
Nouveau WRInaute
Bonsoir

www.yakasolution.fr
voici le Code de la page inscription :

Code:
<form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>">
        <table width="100%" border="0">
          <tr>
            <td colspan="2" align="center"><input type="text" name="pseudo" id="pseudo" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Pseudo" size="50" /> 
              *</td>
          </tr>
          <tr>
            <td colspan="2" align="center"><input type="text" name="mail" id="mail" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Mail" size="50" /> 
              *</td>
          </tr>
          <tr>
            <td colspan="2" align="center"><input type="text" name="motdepasse" id="motdepasse" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Mot de passe" size="50" /> 
              *</td>
          </tr>
          <tr>
            <td colspan="2" align="center"><input type="text" name="site" id="site" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Site" size="50" /> 
              <span class="lienmenu">*</span></td>
          </tr>
          <tr>
            <td colspan="2" align="center"><input type="text" name="commentaire" id="commentaire" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Commentaire" size="50" /> 
              <span class="lienmenu">*</span></td>
          </tr>
          <tr>
            <td colspan="2" align="center"><input type="text" name="codesecu" id="codesecu" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Combient fait douze plus un en nombre" size="50" /> 
              *</td>
          </tr>
          <tr>
            <td colspan="2" align="center">&nbsp;</td>
          </tr>
          <tr>
            <td width="50%" align="right"><input type="reset" name="button" id="button" value="Réinitialiser" /></td>
            <td width="50%" align="left"><input name="button2" type="submit" id="button2" onclick="MM_validateForm('mail','','NisEmail','pseudo','','R','mail','','RisEmail','motdepasse','','R','codesecu','','RinRange13:13');return document.MM_returnValue" value="Valider inscription" /></td>
          </tr>
        </table>
        <input type="hidden" name="MM_insert" value="form1" />
      </form>

Et voila la page de connexion

Code:
<form id="form1" name="form1" method="post" action="<?php echo $loginFormAction; ?>">
      <label for="mail"></label>
      <input type="text" name="mail" id="mail" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Mail" size="30" />
      <label for="motdepasse"></label>
      <input type="text" name="motdepasse" id="motdepasse" onfocus="if(this.value==this.defaultValue)value=''" onblur="if(this.value=='')value=this.defaultValue;" value="Mot de passe" size="20" />
      <input type="submit" name="button" id="button" value="Connexion" />
    </form>

@+ Filou
 
WRInaute accro
filou80 a dit:
voici le Code de la page inscription
Ca c'est ce qui se passe côté client ça n'aide en rien il faut que tu sache comment distinguer un utilisateur connecté ou pas en php donc côté serveur. Chez moi par exemple i y a des variables de session qui sont initialisés en cas d'utilisateur reconnu.

Ensuite tes liens de download doivent être sous la forme www.example.com/dl/fichier.php?file=truc
Dans le script "fichier.php" tu récupère "truc" pour l'envoyer avec header() après avoir vérifié que l'utilisateur est OK.

Tu peux aussi passer par une réécriture d'url pour passer a travers "script.php" sans changer tes liens actuels si la structure d'url le permet.
 
Nouveau WRInaute
Salut,

PHP:
<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /></span><span class="syntaxkeyword">if(isset(</span><span class="syntaxdefault">$_SESSION</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">&&</span><span class="syntaxdefault"> $_SESSION</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'user_id'</span><span class="syntaxkeyword">]){<br /><br /></span><span class="syntaxdefault">    $file </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">"/REPERTOIRE_INTERDIT_OU_CHEMIN_QUE TU_VEUX/"</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">$_GET</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'truc'</span><span class="syntaxkeyword">];<br /><br /></span><span class="syntaxdefault">    $etag </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> md5_file</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> <br />    $last_modified_time </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> filemtime</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> <br />    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Content-disposition: attachment; filename="</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">$_GET</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'truc'</span><span class="syntaxkeyword">]);</span><span class="syntaxdefault"> <br />    <br />    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Last-Modified: "</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">gmdate</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"D, d M Y H:i:s"</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $last_modified_time</span><span class="syntaxkeyword">).</span><span class="syntaxstring">" GMT"</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> <br />    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Etag: $etag"</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> <br /><br />    $mime </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> finfo_file</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">finfo_open</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">FILEINFO_MIME_TYPE</span><span class="syntaxkeyword">),</span><span class="syntaxdefault"> $file</span><span class="syntaxkeyword">);<br /><br /><br /></span><span class="syntaxdefault">    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Content-Type: '</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">$mime</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> </span><span class="syntaxcomment">// ou   header("Content-Type: application/force-download"); <br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Content-Length:&nbsp;"</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">filesize</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">));&nbsp;<br /><br /></span><span class="syntaxdefault">    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Cache-Control: must-revalidate"</span><span class="syntaxkeyword">);<br /><br /></span><span class="syntaxdefault">    echo </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">file_get_contents </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$file</span><span class="syntaxkeyword">));<br />}<br />else{<br /></span><span class="syntaxdefault">    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Location: http://ailleurs.com'</span><span class="syntaxkeyword">);<br />}<br /></span><span class="syntaxdefault">?><br /></span></span>
 
Discussions similaires
Haut