PHP Download Script

Die Scriptsprache PHP fĂĽr die Gestaltung von dynamischen Websites.

PHP Download Script

Beitragvon alpinux » Mo 30 Jun, 2003 10:10

Ich möchte, dass mein script nur von bestimmten adressen aus aufgerufen werden kann.
Dafür bräuchte ich eure unterstützung.
Ich habe meine Probleme mit der Funktion HTTP_Referer.
Schaut euch mal den code an...
[php]
<?php
$files=array(
'OpenSelectedUrl.rar',
'SearchGoogle.rar'
);
$filenames=array(
'Open Selected Url.rar',
'Search Google.rar'
);
$additional_info=array(
"", // OpenselectedUrl
"Have you seen some text somewhere on a webpage and don't know what it is?<br>
So you copy the text and search for it at google.
With this little Script it's much easier.
" // Search Google
);
$url= "/wwwroot/software/";

$valid_referer=array(
'http://conan',
'http://www.google.com'
);

for($tmp=0;$tmp<count($valid_referer);$tmp++)
{
$referers = getenv('HTTP_REFERER');
echo $referers;
if($valid_referer[$tmp]==getenv('HTTP_REFERER'))
{

$get_in = true;
}
}

if($get_in == TRUE)
{

$referer=ereg_replace( "\?.", "",$HTTP_REFERER);
$thisfile= "http://$HTTP_HOST$PHP_SELF";

if ($referer!=$thisfile){
echo "
<Title>XXX Download Area</title>
<html>
<body link='#0066FF' vlink='#0066FF' alink='#0066FF'>
";
echo "<center><big><a href=\"http://XXXXX\">XXXX Download Area</big><br><hr color=#0066cc></center>";
for ($i=0;$i<count($files);$i++)
{
echo "<A HREF=\"$PHP_SELF?$i\">",$filenames[$i], "<br></A> $additional_info[$i]\n<hr color=#0066cc>";
}
echo "
</body>
</html>
";

}
else
{
$i=$QUERY_STRING;
$total=$url . $files[$i];
Header ( "Content-Type: application/octet-stream");
Header ( "Content-Length: ".filesize($total));
Header( "Content-Disposition: attachment; filename=$filenames[$i]");
readfile($total);
}
}
else
{
echo "We don't need leecher!!!";
}

?>
[/php]

Es geht mir hier um das Array valid_referer. Falls die Referer URL im Array ist, dann soll alles ausgegeben werden - sonst nicht!
Irgendwelche Ideen?
alpinux
Alumni (Moderatoren)
Alumni (Moderatoren)
 
Beiträge: 143
Registriert: Mo 30 Jun, 2003 07:15
Wohnort: Austria

Beitragvon Tom » Di 01 Jul, 2003 11:31

Auf den HTTP_REFERER kannst du dich sowieso nicht verlassen, weil den nicht alle Clients angeben.
Tom
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 80
Registriert: Sa 28 Jun, 2003 07:02

Beitragvon alpinux » Di 01 Jul, 2003 15:14

Tom hat geschrieben:Auf den HTTP_REFERER kannst du dich sowieso nicht verlassen, weil den nicht alle Clients angeben.

Habs gemerkt,danke.
alpinux
Alumni (Moderatoren)
Alumni (Moderatoren)
 
Beiträge: 143
Registriert: Mo 30 Jun, 2003 07:15
Wohnort: Austria


ZurĂĽck zu PHP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 20 Gäste