Little problem with load.php

Enthält archivierte Beiträge von Hotschi's Board zum Download MOD.
Posten ist hier nicht möglich, bitte das Supportforum dafür verwenden!
Gesperrt
Anonymous

Little problem with load.php

Beitrag 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:
Helmut

Beitrag 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
Anonymous

Beitrag von Anonymous »

Hi Helmut,

Vielen dank, jetzt gehst gut!!!
Anonymous

Beitrag 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);
	}

?>
Helmut

Beitrag 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
Anonymous

Beitrag 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
Anonymous

Beitrag 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.
Anonymous

Beitrag 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
Anonymous

translate?

Beitrag 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
Anonymous

Beitrag von Anonymous »

Please post lines 30 through 40. Thanks!
Gesperrt