Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2143 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [RESOLU] interdir le download de fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU] interdir le download de fichier

n°1513452
gilles974
Posté le 12-02-2007 à 08:36:39  profilanswer
 

bonjour
j'ai un petit probléme avec se script : $yes reste = 0
le but est d'interdir les telechargements de fichiers de $oksites à partir d'un autre site.
 
si l'internaute est sur le site il est redirigé sur le fichier.zip
sinon il est redirigé sur $oksites
 
merci d'avance pour le coup de main
 
a+
 

Code :
  1. $lesite = $_SERVER["HTTP_REFERER"];
  2. if( ! isset( $_SERVER['HTTP_REFERER'] ) ) {$_SERVER['HTTP_REFERER'] = "" ; }
  3. $oksites = array("http://site_1.com","http://www.site_2.com" );   // le visiteur vient d'ici  
  4. $yes = 0;
  5. while(list($domain, $subarray) = each($oksites))
  6.      {
  7.      if(ereg("$lesite",$subarray)) { $yes = 1; }
  8.      }
  9. if($yes == 1) { header("Location:http://file_1/rep/$monfichier" ); }
  10.   else  { header("Location:http://site_1" ); }


Message édité par gilles974 le 14-02-2007 à 07:39:24
mood
Publicité
Posté le 12-02-2007 à 08:36:39  profilanswer
 

n°1513480
ZeBix
edit > preview
Posté le 12-02-2007 à 10:50:01  profilanswer
 

Bonjour,

 

je ne sais pas comment est définie ta variable "$domain", mais est-ce que tu entres dans ton while ? Essaye un bon vieux "printf debug" des familles, en ajoutant un " echo 'pouet'; " avant le "if" dans ton "while", pour voir ?


Message édité par ZeBix le 12-02-2007 à 10:50:12
n°1513488
gilles974
Posté le 12-02-2007 à 11:06:11  profilanswer
 

bonjour
Voici le resultat une fois integre le echo de domain et subarray
 

Code :
  1. while(list($domain, $subarray) = each($oksites))
  2.      {  
  3.      echo "domain=$domain<br>subarray=$subarray<br>";
  4.      if(ereg("$lesite",$subarray)) { $yes = 1; }
  5.      }


 
resultat =
 
domain=0
subarray=http://site_1.com
domain=1
subarray=http://www.site_1.com
 
cordialement gilles

n°1513626
math2k
Posté le 12-02-2007 à 15:18:21  profilanswer
 

Salut,
 
T'as pas vraiment besoin d'utiliser les regex dans ce cas ci. strstr au pire mais ici tu peux utiliser parse_url pour trouver l'hostname de l'url et le comparer aux elements de ton tableau avec in_array
 
Par exemple:
 

Code :
  1. if(isset($_SERVER['HTTP_REFERER'])) {
  2.   $lesite = $_SERVER["HTTP_REFERER"];
  3. }
  4. else{
  5.   header("Location:http://site_1" );
  6. }
  7. $oksites = array("site_1.com","www.site_2.com" );   // le visiteur vient d'ici
  8. $url = parse_url($lesite);
  9. if(!in_array($url['host'],$oksites)){
  10.   header("Location:http://site_1" );
  11. }
  12. else{
  13.   header("Location:http://file_1/rep/$monfichier" );
  14. }


 
J'ai pas testé le code mais ca devrait aller

n°1514364
gilles974
Posté le 14-02-2007 à 07:38:51  profilanswer
 

merci math2k pour ce coup de pouce , sa fonctionne bien
salutations gilles
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [RESOLU] interdir le download de fichier

 

Sujets relatifs
Probleme fichier cpuinf32.dllfichier database.yml
lecture fichier texte avec vbProblème avec fichier.txt
[Résolu]Variables globales qui ne se réinitialise pas...passer d'un fichier java a un autre
[Résolu] Trouve le bon nom d'un répertoire juste avec le début[Résolu] [Batch] Création d'un dossier à l'ouverture de Windows
Ecrire du Php dans un fichier créé par fwrite[resolu]gros doute par rapport à l'affichage écran d'un code
Plus de sujets relatifs à : [RESOLU] interdir le download de fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR