3 kleine fragen an zum DL-Mod 5...

Support about Download MOD for phpBB 2
Antworten
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

3 kleine fragen an zum DL-Mod 5...

Beitrag von jungpionier »

Hi Oxpus

vieleicht kennst mich ja noch vom lesen aus deinem Board

also ich hab 3 kleine probleme mit der 5er version wir (DU) hatten/hattest doch damals im 4er mod mir eine Anzeige für den Index gebastelt wo dastand wieviel cash ich im moment habe zum downloaden.

Das war folgender code:

in der index.php

Code: Alles auswählen

include_once($phpbb_root_path . 'includes/dl_common.'.$phpEx);
$user_traffic_out = calc_dl_size($userdata['user_traffic']);


$template->assign_vars(array(
	'USER_TRAFFIC' => $lang['Traffic'].': '.$user_traffic_out)
);
und in der index_body.tpl

Code: Alles auswählen

<td width="30%" align="right" class="nav">{L_USERS_CASH}<font color="#000080"><b>{USER_TRAFFIC}</b></font></td>
wie kann ich das mit dem neuen DL-Mod kompatibel machen???



und dann mein 2tes problem:

du hast mir mal ein kleinen Code geschrieben wenn der user eine datei gedownloadet hat und traffic bezahlt hat das er diese dann immer umsonst downloaden darf.

das ganze sah in etwa so aus:

Code: Alles auswählen

	#
#-----[ OPEN ]------------------------------------------
#
includes/functions_downloads.php

#
#-----[ FIND ]------------------------------------------
#
	global $userdata, $board_config, $dl_auth, $index, $images, $lang, $phpEx;

#
#-----[ AFTER, ADD ]------------------------------------------
#
	global $db;

	$r_username = '';

	//Prüfen, ob der User schon bezahlt hat
	$sql = "SELECT DISTINCT username, filename FROM phpbb_loaded
		WHERE (username LIKE '".$userdata['username']."')
			AND (filename LIKE '$file_name')";
	$result = $db->sql_query($sql);
	while ($row = $db->sql_fetchrow($result))
	{
		$r_username = $row['username'];
	}

#
#-----[ FIND ]------------------------------------------
#
	if ( $file_free == "1")

#
#-----[ REPLACE WITH ]------------------------------------------
#
	if ( $file_free == "1" || $r_username != '')

#
#-----[ OPEN ]------------------------------------------
#
load.php

#
#-----[ FIND ]------------------------------------------
#
	$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks = klicks + 1, overall_klicks = overall_klicks + 1, last_time = " . time() . " WHERE id = $id";
	$result_klicks = mysql_query($query_klicks);

#
#-----[ AFTER, ADD ]------------------------------------------
#
	$query_log = "INSERT INTO phpbb_loaded VALUES ('". $userdata['username'] ."' , '$file_name', NOW());";
	$result_log = mysql_query($query_log);


#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
wie kann ich das wieder integrieren ? das wäre sehr wichtig für mich !!!




und zu guter letzt

hattest du mir einen kleinen Code geschrieben zur Anzeige des usertraffics im Beitragsprofil

das war folgender Code:

Code: Alles auswählen

   1. #
   2. #-----[ OPEN ]-----
   3. #
   4. viewtopic.php
   5.

   6. #
   7. #-----[ FIND ]-----
   8. #
   9. include($phpbb_root_path . 'common.'.$phpEx);
  10.

  11. #
  12. #-----[ AFTER, ADD ]-----
  13. #
  14. include($phpbb_root_path . 'includes/dl_common.'.$phpEx);
  15.

  16. #
  17. #-----[ FIND ]-----
  18. #
  19.       'POSTER_NAME' => $poster,
  20.

  21. #
  22. #-----[ AFTER, ADD ]-----
  23. #
  24.       'POSTER_TRAFFIC' => $lang['Traffic'].': '.calc_dl_size($postrow[$i]['user_traffic']),
  25.

  26. #
  27. #-----[ OPEN ]-----
  28. #
  29. templates/subSilver/viewtopic_body.tpl
  30.

  31. #
  32. #-----[ FIND ]-----
  33. #
  34. {postrow.POSTER_FROM}
  35.

  36. #
  37. #-----[ IN-LINE AFTER, ADD ]-----
  38. #
  39. <br />{postrow.POSTER_TRAFFIC}
  40.

  41.

  42. #
  43. #-----[ SAVE/CLOSE ALL FILES ]-----
  44. #
  45. # EoM

wie kann ich das wieder integrieren ?

wenns nicht wichtig wäre würde ich nicht fragen , wäre lieb von dir wenn du etwas zeit dafür hättest .

DANKE !!!

mfg Jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Traffic für den Index:

Code: Alles auswählen

include($phpbb_root_path . 'dl_mod/classes/class_dlmod.'.$phpEx);
$dl_mod = new dlmod();
$user_traffic_out = $dl_mod->dl_size($userdata['user_traffic']);
$template->assign_vars(array(
	'USER_TRAFFIC' => $lang['Traffic'].': '.$user_traffic_out)
);
Der Code für die index_body.tpl bleibt der gleiche.

Das zweite Problem ist vielleicht so zu lösen:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
downloads.php

#
#-----[ FIND ]------------------------------------------
#
	if ($check_status['auth_dl'] && $dl_file['id'])
	{

#
#-----[ AFTER, ADD ]------------------------------------------
#
		$r_username = '';

		//Prüfen, ob der User schon bezahlt hat
		$sql = "SELECT DISTINCT username, filename FROM phpbb_loaded
			WHERE (username = '".$userdata['username']."')
				AND (filename = '".$dl_file['file_name']."')";
		$result = $db->sql_query($sql);
		while ($row = $db->sql_fetchrow($result))
		{
			$r_username = $row['username'];
		}

#
#-----[ FIND ]------------------------------------------
#
				$sql = "UPDATE " . USERS_TABLE . "
					SET user_traffic = user_traffic - " . $dl_file['file_size'] . "
					WHERE user_id = " . $userdata['user_id']; 
				if (!($db->sql_query($sql)))
				{
					message_die(GENERAL_ERROR, 'Could not update download data', '', __LINE__, __FILE__, $sql);
				}

#
#-----[ REPLACE WITH ]------------------------------------------
#
				if (!$r_username)
				{
					$sql = "UPDATE " . USERS_TABLE . "
						SET user_traffic = user_traffic - " . $dl_file['file_size'] . "
						WHERE user_id = " . $userdata['user_id']; 
					if (!($db->sql_query($sql)))
					{
						message_die(GENERAL_ERROR, 'Could not update download data', '', __LINE__, __FILE__, $sql);
					}
				}

#
#-----[ FIND ]------------------------------------------
#
		else if ($status)
		{

#
#-----[ AFTER, ADD ]------------------------------------------
#
			$query_log = "INSERT INTO phpbb_loaded VALUES ('". $userdata['username'] ."' , '".$dl_file['file_name']."', NOW());";
			$result_log = mysql_query($query_log);
Und das dritte ist ähnlich dem ersten:

Code: Alles auswählen

#
#-----[ OPEN ]-----
#
viewtopic.php

#
#-----[ FIND ]-----
#
include($phpbb_root_path . 'common.'.$phpEx);

#
#-----[ AFTER, ADD ]-----
#
include($phpbb_root_path . 'dl_mod/classes/class_dlmod.'.$phpEx);
$dl_mod = new dlmod();

#
#-----[ FIND ]-----
#
      'POSTER_NAME' => $poster,

#
#-----[ AFTER, ADD ]-----
#
      'POSTER_TRAFFIC' => $lang['Traffic'].': '.$dl_mod->dl_size($postrow[$i]['user_traffic']),
Auch hier bleibt die Änderung in der TPL erhalten.
Zuletzt geändert von oxpus am Sa 16.Sep, 2006 23:32, insgesamt 2-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

ein riesengrosses DANKE Oxpus


1 und 3 funktionieren einwand frei

das 2te funktioniert nicht richtig da wird gar kein Traffic mehr abgezogen.

könntest du da eventuell noch mal schauen ???

ich will dich aber auf gar keinem fall Nerven :)

mfg Jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich habe den 2. Teil angepasst. Vielleicht klappts so...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Danke geht aber auch nicht jetzt wirds wieder immer abgezogen LOL.

Vieleicht noch ne Idee? (mit treuen Hundeaugen hochgugg) ;P


mfg Jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich habe die letzte SQL-Anweisung nochmal geändert.
Der Dateiname war nicht der korrekte, somit konnte logischerweise das Script den vorherigen Download nicht finden...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Dankeschön das funktioniert soweit :respect:

bis auf einen kleinen schönheitsfehler das Icon ändert sich noch nicht auf grün wenn ich die datei gedownloadet habe.

Ich erkläre es noch mal hehe*

1.) also ich downloade die datei das erste mal dabei wird traffic abgezogen <-- Funktioniert

2.) nach dem download sollte das Icon Grün werden (kein Trafficabzug vom Benutzerkonto) <-- Das funktioniert noch nicht

3.) Ich downloade die Datei ein 2tes mal, es wird kein traffc mehr abgezogen <-- Funktioniert


Hast du da noch ne idee ? Im alten DL-Mod (4.36) Vorher hat das funktioniert :cool:


Ich danke dir jetzt schon mal für deine grossartige leistung und den Grossartigen Support uns Usern gegenüber.


mfg Jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Öhm, das wäre ein zu grosser Eingriff in den MOD.
Da müsste ich mir in einer ruhigen Stunde mal Gedanken machen, da der 5er MOD nun die Stati der Downloads komplett anders verwaltet.
Aber ich müsste eigentlich dazu auch was erstellt haben...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Ja du hattest damals was erstellt dazu

und zwar war das in der Load.php

folgender Code:

Code: Alles auswählen


Find

if ($status == true)
{
	$query_klicks = "UPDATE " . DOWNLOADS_TABLE . " SET klicks = klicks + 1, overall_klicks = overall_klicks + 1, last_time = " . time() . " WHERE id = $id";
	$result_klicks = mysql_query($query_klicks);


After Add

	$sql = "SELECT DISTINCT username, filename FROM phpbb_loaded
		WHERE (username LIKE '%".$userdata['username']."%')
			AND filename LIKE '%$file_name%'";
	$result = $db->sql_query($sql);
	$total = $db->sql_numrows($result);
	$db->sql_freeresult($result);	

	if ($total == 0)
	{


Find 

		if ($user_id != ANONYMOUS && $file_free == "0" && $file_extern == "0") 
		{
			$query_traffic = "UPDATE " . USERS_TABLE . " SET user_traffic = user_traffic - $file_size WHERE user_id = $user_id"; 
			$result_traffic = mysql_query($query_traffic);
		}
	}


After add

}
das wars glaube ich schon :)


aber im neuen mod gibts ja keine load.php mehr deswegen weis ich nicht wie ichs einbauen soll und sicherlich haben sich da ja auch variablen geändert , davon hab ich ja nun leider gar keine ahnung. :(


Ich wäre dir jedenfalls sehr dankbar wenn du noch irgentwie ne ruhige minute hättest.




mfg Jungpionier


:p
Dateianhänge
load.rar
Ich h?nge mal die alte load.php an vieleicht hilfts ja :)
(1.47 KiB) 119-mal heruntergeladen
Zuletzt geändert von jungpionier am So 17.Sep, 2006 10:54, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Versuch mal das hier:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
dl_mod/classes/class_dlmod.php

#
#-----[ FIND ]------------------------------------------
#
	function dl_status($id)
	{
		global $images, $lang, $phpEx;

		$lang['Dl_red_explain_alt'] = sprintf($lang['Dl_red_explain_alt'], $this->dl_config['dl_posts']);

		$cat_id = $this->dl_file[$id]['cat'];
		$cat_auth = array();
		$cat_auth = $this->dl_cat_auth($cat_id);
		$index = array();
		$index = $this->full_index($cat_id);
		$status = '';
		$file_name = '';
		$auth_dl = 0;

		$file_name = '<a href="'.append_sid("downloads.$phpEx?view=detail&id=$id").'">'.$this->dl_file[$id]['file_name'].'</a>';
		$file_detail = $this->dl_file[$id]['file_name'];

#
#-----[ AFTER, ADD ]------------------------------------------
#
		//Prüfen, ob der User schon bezahlt hat
		global $db;
		$sql = "SELECT DISTINCT username, filename FROM phpbb_loaded
			WHERE (username = '".$this->user_id."')
				AND (filename = '".$this->dl_file[$id]['file_name']."')";
		$result = $db->sql_query($sql);
		while ($row = $db->sql_fetchrow($result))
		{
			$this->dl_file[$id]['free'] = 1;
		}
Zuletzt geändert von oxpus am So 17.Sep, 2006 23:40, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Danke

da bekomme ich aber diesen Fehler:
Fatal error: Call to a member function on a non-object in /var/www/web129/html/forum/dl_mod/classes/class_dlmod.php on line 1389
Zeile 1389 ist die fettgedruckte zeile
//Prüfen, ob der User schon bezahlt hat
$sql = "SELECT DISTINCT username, filename FROM phpbb_loaded
WHERE (username = '".$userdata['username']."')
AND (filename = '".$dl_file['file_name']."')";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$this->dl_file[$id]['free'] = 1;
}

mfg jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ah, füg mal vor diese SQL-Anweidung die Zeile

Code: Alles auswählen

global $db;
ein, dann ist der Fehler weg.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Danke :)

Fehlermeldung ist weg, funktionieren tut es allerdings nicht also icon schaltet nicht auf grün.

noch ne Idee ? ¦4
Zuletzt geändert von jungpionier am So 17.Sep, 2006 23:27, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich habe den Code in Post #10 geändert...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Hmmm funktioniert auch nicht ¦4 ¦4 ¦4
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Dann muss ich mir das selber mal alles installieren.
Dauert aber eine Weile, da ich momentan nicht gerade mit Zeit gesegnet bin.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

okay vielen Dank jetzt schonmal für deine Mühe @Oxpus :)

mfg jungpionier



Edit 19.10.2006


hast schon mal etwas zeit gehabt @Oxpus ??? oder eher vergessen ¦4

mfg Jungpionier
Zuletzt geändert von jungpionier am Do 19.Okt, 2006 11:48, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nicht wirklich. Im Moment sind eine ganze Menge anderer Baustellen abzufackeln.....
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

okay ich gedulde mich :) Danke für die Antwort :p

mfg Jungpionier
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Mal schaun, vielleicht pack ich das als Option in die nächste Version.
Aktuell klappt da jedenfalls nichts...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Schade aber okay Danke trotzdem für deine mühe :)


mfg Jungpionier
Antworten