Seite 1 von 1

Little problem with load.php

Verfasst: So 18.Mai, 2003 21:29
von Anonymous
I just installed and configured the dlmod.
It went just fine, but when i click on a link i get some errors.
Can anybody tell me what's wrong.

link

Thanks in advance.

p.s. answers in German are ok :wink:

Verfasst: Mo 19.Mai, 2003 11:25
von Helmut
Hallo MrC,

dein Problem ist schon bekannt, aber es wurde noch keine wirkliche Lösung gefunden. Die einzige Lösung, die es zur Zeit gibt, ist eine Zeile im Code zu deaktivieren. Das kannst du aber nur machen, wenn du im Verzeichnis ../media keine weiteren Unterverzeichnisse verwendest.

Ersetze mal in der load.php
$data = mysql_fetch_array($result_cat, MYSQL_ASSOC);
durch die Zeile
//$data = mysql_fetch_array($result_cat, MYSQL_ASSOC);
Damit umgehst du die Verzeichnisabfrage und somit kommt es zu keiner Fehlermeldung. Aber wie gesagt, es beseitigt nicht den eigentlichen Fehler. Sobald der Fehler gefunden ist, wird es bekannt gegeben.

Gruß Helmut

Verfasst: Mo 19.Mai, 2003 13:58
von Anonymous
Hi Helmut,

Vielen dank, jetzt gehst gut!!!

Verfasst: Mi 21.Mai, 2003 00:07
von Anonymous
Problem gelöst! Problem solved!

Code:

Code: Alles auswählen

<?php 
$download_dir = "media/"; 

define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_DOWNLOADS);
init_userprefs($userdata);
//
// End session management
//

$sql = "SELECT file_name, free, extern, cat FROM " . DOWNLOADS_TABLE . " WHERE id = '$id'";
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))

	{
	$sql_cat = "SELECT path FROM " . DL_CAT_TABLE . " WHERE id = ".$row['cat'];
	$result_cat = mysql_query($sql_cat);
	$data = mysql_fetch_array($result_cat, MYSQL_ASSOC);
	$file_path = $data['path'];
	$file_name = $row['file_name'];
        $file_size = ($row['extern']==1 ) ? '' : filesize($download_dir .$file_path.$file_name);
	$file_free = $row['free'];
	$file_extern = $row['extern'];
	}

$user_id = $userdata['user_id'];

$sql = "SELECT user_traffic FROM " . USERS_TABLE . " WHERE user_id = '$user_id'"; 
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))

	{
	$user_traffic = $row[user_traffic];
	}

if ( $file_free == "1" OR $file_extern == "1")
	{
	$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks=klicks+1 WHERE id = '$id'";
	$result_klicks = mysql_query($query_klicks);
	}

if ( $userdata['session_logged_in'] AND $user_traffic > $file_size AND $file_free == "0" AND $file_free == "0" AND $file_extern == "0")
	{
	$query_traffic = "UPDATE " . USERS_TABLE . " SET user_traffic=user_traffic-" . $file_size . " WHERE user_id = '$user_id'"; 
	$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks=klicks+1 WHERE id = '$id'";
	$result_traffic = mysql_query($query_traffic);
	$result_klicks = mysql_query($query_klicks);
	}

if ( $file_extern == "1" )
	{
	Header("Location: $file_name");
	}

if ( $file_free == "1" OR ( $userdata['session_logged_in'] AND $user_traffic > $file_size) )
	{
	header("Content-Type: application/octet-stream");
	header("Content-Disposition: attachment; filename=\"$file_name\"");
	readfile($download_dir . "" . $file_path . "/" . $file_name);
	}

?>

Verfasst: Mi 21.Mai, 2003 11:45
von Helmut
Hallo ltiefland,

es scheint nun alles Fehlerfrei zu gehen, du hattest nur ein paar kleinere "Fehler" drinnen, die bei mir einen "Parse error" ausgelöst hatten. Schuld waren die Steuerzeichen "<" und ">" die anscheinend von deinem Programm mit übersetzt wurden. Ich habe das bereinigt und hier nochmal deinen Code reingestellt.
<?php
$download_dir = "media/";

define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_DOWNLOADS);
init_userprefs($userdata);
//
// End session management
//

$sql = "SELECT file_name, free, extern, cat FROM " . DOWNLOADS_TABLE . " WHERE id = '$id'";
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))

{
$sql_cat = "SELECT path FROM " . DL_CAT_TABLE . " WHERE id = ".$row['cat'];
$result_cat = mysql_query($sql_cat);
$data = mysql_fetch_array($result_cat, MYSQL_ASSOC);
$file_path = $data['path'];
$file_name = $row['file_name'];
$file_size = ($row['extern']==1 ) ? '' : filesize($download_dir .$file_path.$file_name);
$file_free = $row['free'];
$file_extern = $row['extern'];
}

$user_id = $userdata['user_id'];

$sql = "SELECT user_traffic FROM " . USERS_TABLE . " WHERE user_id = '$user_id'";
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))

{
$user_traffic = $row[user_traffic];
}

if ( $file_free == "1" OR $file_extern == "1")
{
$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks=klicks+1 WHERE id = '$id'";
$result_klicks = mysql_query($query_klicks);
}

if ( $userdata['session_logged_in'] AND $user_traffic > $file_size AND $file_free == "0" AND $file_free == "0" AND $file_extern == "0")
{
$query_traffic = "UPDATE " . USERS_TABLE . " SET user_traffic=user_traffic-" . $file_size . " WHERE user_id = '$user_id'";
$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks=klicks+1 WHERE id = '$id'";
$result_traffic = mysql_query($query_traffic);
$result_klicks = mysql_query($query_klicks);
}

if ( $file_extern == "1" )
{
Header("Location: $file_name");
}

if ( $file_free == "1" OR ( $userdata['session_logged_in'] AND $user_traffic > $file_size))
{
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"$file_name\"");
readfile($download_dir . "" . $file_path . "/" . $file_name);
}

?>
Nun sollte aber alles ohne Probleme gehen.

Gruß Helmut

Verfasst: Mi 21.Mai, 2003 12:42
von Anonymous
nun bringt er zwar keine Fehlermeldung mehr, aber er läd die datei auch net mehr runter. sonder versucht sie im fenster zu öffnen...
habt ihr eine idee??

greetz

Verfasst: Mi 21.Mai, 2003 13:29
von Anonymous
Hallo Helmut,

der Fehler liegt an dem "Code" Tag, den ich für den Post verwendet habe. Anscheinend setzt der die "<" und ">" Zeichen in die HTML-Codes um.

Also bei mir erscheint eine Dialogbox des Browsers, wo ich die Datei dann speichern kann. Das ist das normale Verhalten und sollte eigentlich keine Probleme machen.

Verfasst: Do 05.Jun, 2003 01:10
von Anonymous
Also bei mir will er immer noch die load.php datei saugen... habe den txt vom Helmut mal reingeschrieben aber geht immer noch nicht...gibt es denn immer noch keine Lösung?

C.U Mike-Bcn

translate?

Verfasst: Di 23.Sep, 2003 19:40
von Anonymous
Can anyone please translate a littlebit of this into english? because when I want to download a file in my download mod i get this error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/hostgene/public_html/koopa/folo/load.php on line 35

Warning: Cannot modify header information - headers already sent by (output started at /home/hostgene/public_html/koopa/folo/load.php:35) in /home/hostgene/public_html/koopa/folo/load.php on line 57

I hate errors :S.. so help me please?

thanks

Verfasst: Di 23.Sep, 2003 19:47
von Anonymous
Please post lines 30 through 40. Thanks!