Protection de l'adresse de mon répertoire de téléchargement : solution $HTTP_REF

1motorola1 Messages postés 1 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 17 janvier 2004 - 17 janv. 2004 à 14:24
Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 - 18 janv. 2004 à 11:04
Salut à tout le monde !

Alors voila je tente ces derniers temps d'éviter que les visiteurs de mon site puisse connaitre le répertoire ou se situe les fichiers .zip que je leur propose en téléchargement, on m'a conseillé une méthode qui me semble bonne à défaut d'être aussi élaboré que sur votre site (d'ailleurs si vous pouviez m'expliquer la méthode que vous utiliser j'en serais vraiment heureux) mais alors que je pense ne pas avoir fait d'erreur je me retrouve confronté à un message que je ne m'explique pas alors si vous pouviez m'aider j'en serais ravie :

je vous expose le cas :

Voici le message en question,

Warning: Cannot add header information - headers already sent by (output started at /var/www/free.fr/8/w/w/w/mon_site/fonction.php:2) in fonction.php on line 22 (ligne qui dans mon message est en gras..)

et voila le contenu (tout bête ^^) de mes deux pages :

// contenu de la page telechargements.php

- télécharger : aperçu n°1



// contenu de la page fonction.php

<?php

$ADMIN[defaulturl] = "http://mon_site.free.fr/erreur.html";

$okaysites = array("http://mon_site.free.fr/telechargements.php");

$ADMIN[url_1] = "http://mon_site.free.fr/telechargements";

$reffer = $HTTP_REFERER;
if($reffer) {
$yes = 0;
while(list($domain, $subarray) = each($okaysites)) {
if (ereg("$reffer",$subarray)) {
$yes = 1;
}
}
$theu = "url"."_"."$site";
if ($ADMIN[$theu] AND $yes == 1) {
header("Location: $ADMIN[$theu]/$file");
} else {
header("Location: $ADMIN[defaulturl]");
}
} else {
header("Location: $ADMIN[defaulturl]");
}

?>

Bisous et merci d'avance
Severine.

1 réponse

Tomcube Messages postés 311 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 14 septembre 2004 1
18 janv. 2004 à 11:04
C'est normal, la fonction header() ne peut pas marcher quand tu as déjà rentré du HTML avant. Donc enlève ton HTML (c'est à dire " Télécharger" etc ... ) et met le à la fin de ta page ^^ !

-------------------------------
Life is a game, Enjoy ! ^^
0
Rejoignez-nous