[Final] NV "Who Was Here?" 1.2.1

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

hast du dann nen Link zum Board?
kein Support per PN
rhooba
Mitglied
Beiträge: 74
Registriert: 08.02.2006 11:59

Beitrag von rhooba »

Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

und die functions_wwh.php dazu?
kein Support per PN
rhooba
Mitglied
Beiträge: 74
Registriert: 08.02.2006 11:59

Beitrag von rhooba »

Ich hab das RC2 eingebaut! Ich denke daran lags. Ich hab einfach die funktions_wwh.php nach includes hochgeladen. Das reicht doch, oder?

LG
Detlev
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

jap, das sollte reichen.
kein Support per PN
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Öhm, ich bekomme Fehlermeldungen, wenn ich die neue includes/functions_wwh.php benutze:
[phpBB Debug] PHP Notice: in file /includes/functions_wwh.php on line 115: Undefined index: user_ip
Du machst kurz vorher eine Abfrage:

Code: Alles auswählen

// bots need to get a extra handle
$sql = " SELECT u.user_type, u.user_id, u.user_lastvisit, u.user_allow_viewonline, w.id
	FROM " . USERS_TABLE . " u, " . WWH_TABLE . " w
	WHERE u.user_type = 2
	AND u.user_id <> 1
	AND u.user_lastvisit > $timestamp_cleaning";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
Dort fragst Du alles ab, ausser die user_ip.

Willst aber über das array $row die user_ip eintragen -->
$sql = "INSERT INTO `" . WWH_TABLE . "` (`ip`, `id`, `viewonline`, `last_page`) VALUES ('" . $row['user_ip'] . "', '" . $row['user_id'] . "', '" . $row['user_allow_viewonline'] . "', '" . $row['user_lastvisit'] . "')";
Die dürfte an dieser Stelle aber leer sein, daher auch die "Fehlermeldung", wenn man den Debug Modus an hat !


Anmerkungen:
Die message_die brauchst Du nicht mehr. Dafür gibt es das "Backtrace" ;-)

Aus:

Code: Alles auswählen

	if ( !$db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, 'Could not delete Entry from WWH-Table: Case3', '', __LINE__, __FILE__, $sql);
	}
Mach einfach:

Code: Alles auswählen

$db->sql_query($sql)
Dann noch folgendes:
Halte Dich etwas mehr an die Coding Guidelines, SQL .
http://area51.phpbb.com/docs/coding-guidelines.html#sql
Punkte: sql_build_array():
usw.

Ah, nochwas: Du verwendest in einigen Abfragen :

Code: Alles auswählen

WHERE u.user_type = 2
Besser wäre es wenn du die definierten Constanten ( siehe constants.php ) für den Usertyp verwenden würdest. Nicht jeder Coder weiss was usertyp 2 ist

-->

Code: Alles auswählen

WHERE u.user_type = ' . USER_IGNORE . '

Code: Alles auswählen

define('USER_NORMAL', 0);
define('USER_INACTIVE', 1);
define('USER_IGNORE', 2);
define('USER_FOUNDER', 3);
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Dr.Death hat geschrieben:Öhm, ich bekomme Fehlermeldungen, wenn ich die neue includes/functions_wwh.php benutze:
[phpBB Debug] PHP Notice: in file /includes/functions_wwh.php on line 115: Undefined index: user_ip
1.Fix
finde:

Code: Alles auswählen

// bots need to get a extra handle
$sql = " SELECT u.user_type, u.user_id, u.user_lastvisit, u.user_allow_viewonline, w.id
   FROM " . USERS_TABLE . " u, " . WWH_TABLE . " w
   WHERE u.user_type = 2
   AND u.user_id <> 1
   AND u.user_lastvisit > $timestamp_cleaning";
So sollte die Abfrage stimmen:

Code: Alles auswählen

// bots need to get a extra handle
$sql = ' SELECT u.user_type, u.user_id, u.user_ip, u.user_lastvisit, u.user_allow_viewonline, w.id
   FROM ' . USERS_TABLE . ' u, ' . WWH_TABLE . ' w
   WHERE u.user_type = ' . USER_IGNORE . '
      AND u.user_id <> 1
      AND u.user_lastvisit > '.$timestamp_cleaning;
Dr.Death hat geschrieben:

Code: Alles auswählen

	if ( !$db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, 'Could not delete Entry from WWH-Table: Case3', '', __LINE__, __FILE__, $sql);
	}
Mach einfach:

Code: Alles auswählen

$db->sql_query($sql)
Hab ich 12mal gemacht ;)(macht 36 Zeilen weniger Code)
Dr.Death hat geschrieben:

Code: Alles auswählen

WHERE u.user_type = 2
Besser wäre es wenn du die definierten Constanten ( siehe constants.php ) für den Usertyp verwenden würdest. Nicht jeder Coder weiss was usertyp 2 ist

Code: Alles auswählen

WHERE u.user_type = ' . USER_IGNORE . '
hab ich jetzt auch gemacht.
Dr.Death hat geschrieben:Dann noch folgendes:
Halte Dich etwas mehr an die Coding Guidelines, SQL .
http://area51.phpbb.com/docs/coding-guidelines.html#sql
Punkte: sql_build_array():
Absätze hab ich mal berücksichtigt Das mit "Common DBAL methods" ist aber auch so ne Sache für sich, egal... werd meinen Code mal daraufhin durcharbeiten. Genauso die ' und " Regeln...
Zuletzt geändert von nickvergessen am 10.06.2007 09:22, insgesamt 1-mal geändert.
kein Support per PN
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Kleine Korrektur noch:

Wenn man "single quotes" benutzt, müssen $variablen ausserhalb von den single quotes stehen.

Die SQL Abfrage muss demnach so aussehen:

Code: Alles auswählen

$sql = ' SELECT u.user_type, u.user_id, u.user_ip, u.user_lastvisit, u.user_allow_viewonline, w.id 
   FROM ' . USERS_TABLE . ' u, ' . WWH_TABLE . ' w 
   WHERE u.user_type = ' . USER_IGNORE . ' 
      AND u.user_id <> 1 
      AND u.user_lastvisit > ' . $timestamp_cleaning ;
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

kein Support per PN
sopi
Mitglied
Beiträge: 163
Registriert: 24.02.2007 11:18

Beitrag von sopi »

Eine ganz blöde Frage (sorry dass ich nicht alle 12 Seiten gelesen habe)
Aber wenn ich das richtig sehe, dann ist das (auch) ein Mod für phpBB3RC2.
Wie kann das sein?
Ich sehe im downloadbereich nur die Version phpBB3RC1 :o
Danke für jedwede Art von Antwort
lg
sopi
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“