Seite 1 von 1
Last visit Mod
Verfasst: 26.04.2006 13:03
von werni1949
Folgende Vorschrift:
#-----[ OPEN ]------------------------------------------------
#
search.php
#
#-----[ FIND ]------------------------------------------------
#
$sql = "SELECT session_id
FROM " . SESSIONS_TABLE;
#
#-----[ REPLACE WITH ]----------------------------------------
#
// Start replacement - Last visit MOD
$expiry_time = $current_time - $board_config['session_length'];
$sql = "SELECT session_id
FROM " . SESSIONS_TABLE ." WHERE session_time>$expiry_time";
// Start replacement - Last visit MOD
Leider ist die Codestelle nicht zu finden. Wo ich die session_table finde ist:
//
// Flood control
//
$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "se.session_ip = '$user_ip'" : 'se.session_user_id = ' . $userdata['user_id'];
$sql = 'SELECT MAX(sr.search_time) AS last_search_time
FROM ' . SEARCH_TABLE . ' sr, ' . SESSIONS_TABLE . " se
WHERE sr.session_id = se.session_id
AND $where_sql";
if ($result = $db->sql_query($sql))
{
if ($row = $db->sql_fetchrow($result))
{
if (intval($row['last_search_time']) > 0 && ($current_time - intval($row['last_search_time'])) < intval($board_config['search_flood_interval']))
{
message_die(GENERAL_MESSAGE, $lang['Search_Flood_Error']);
}
}
}
Kann mir jemand helfen und sagen, was ich nun wo ersetzen muss?
Danke im Voraus!
Verfasst: 26.04.2006 14:07
von Fennias Maxim
Code: Alles auswählen
//
// Finish building query (for all combinations)
// and run it ...
//
$sql = "SELECT session_id
FROM " . SESSIONS_TABLE;
if ( $result = $db->sql_query($sql) )
{
So sieht das bei mir um Zeile 635 aus...
Vieleicht hast du noch einen andern MOD installiert...
Verfasst: 26.04.2006 15:28
von werni1949
etliche...
Trotzdem muss doch doch der last visit einzubauen sein!
Die Codestelle dürfte aber Standard php (2.0.20) sein?
Der Mod ist upgedatet bis 19. Kann es daran liegen?
Verfasst: 07.05.2006 00:07
von DJBase
Ja, der Mod bezieht sich auf .19 und dort schaut die Zeile eben noch etwas anders aus. Ich bin mir nicht sicher, aber vielleicht hilft folgende Abänderung:
Finde
Code: Alles auswählen
//
// Flood control
//
$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "se.session_ip = '$user_ip'" : 'se.session_user_id = ' . $userdata['user_id'];
$sql = 'SELECT MAX(sr.search_time) AS last_search_time
FROM ' . SEARCH_TABLE . ' sr, ' . SESSIONS_TABLE . " se
WHERE sr.session_id = se.session_id
AND $where_sql";
if ($result = $db->sql_query($sql))
{
if ($row = $db->sql_fetchrow($result))
{
if (intval($row['last_search_time']) > 0 && ($current_time - intval($row['last_search_time'])) < intval($board_config['search_flood_interval']))
{
message_die(GENERAL_MESSAGE, $lang['Search_Flood_Error']);
}
}
}
Ersetze durch
Code: Alles auswählen
//
// Flood control
//
$expiry_time = $current_time - $board_config['session_length'];
$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "se.session_ip = '$user_ip'" : 'se.session_user_id = ' . $userdata['user_id'];
$sql = 'SELECT MAX(sr.search_time) AS last_search_time
FROM ' . SEARCH_TABLE . ' sr, ' . SESSIONS_TABLE . " se
WHERE sr.session_id = se.session_id
AND session_time>$expiry_time
AND $where_sql";
if ($result = $db->sql_query($sql))
{
if ($row = $db->sql_fetchrow($result))
{
if (intval($row['last_search_time']) > 0 && ($current_time - intval($row['last_search_time'])) < intval($board_config['search_flood_interval']))
{
message_die(GENERAL_MESSAGE, $lang['Search_Flood_Error']);
}
}
}
Verfasst: 07.05.2006 13:26
von CrYiNg
Hallo!
Es funktioniert, habe es mal getestet.
CrYiNg

Verfasst: 03.06.2006 00:16
von Rule23
Hab es auch in mein Board eingebaut und funktioniert.
Allerdings wenn ich im ACP folgenden Punkt auf Ja setze, wird trotzdem weiterhin jedem die Liste angezeigt.
"Anzeige des letzten Besuchs ausblenden
Wenn auf JA gesetzt, wird die Anzeige des letzten Besuchs für alle Benutzer ausgeblendet (bis auf den Administrator!)"
Obwohl doch eigentlich nur noch Administratoren sehen dürften, wenn dies aktiviert ist. Wo könnte da der Fehler liegen bzw. besteht das Problem bei euch überhaupt?
Benutze allerdings auch nicht subSilver, sondern xabbRed.
www.teeniemamis.de ist das Forum!
Ich lass es jetzt mal aktiviert, bis ich hier ne Antwort habe.

Verfasst: 03.06.2006 00:29
von RobertC
Hast Du es noch aktiviert?
Ich kann nämlich die Last Visits nicht sehen. Die Spalte ist zwar zu sehen aber es steht versteckt da. So wie es ja sein soll.
Verfasst: 03.06.2006 00:55
von Rule23
Ja es ist noch aktiviert.
Seltsam ist, dass ich einmal mit Firefox auf dem Board eingeloggt bin und einmal als Gast mit dem IE. Aber ich seh bei beiden das selbe.
Hier der IE:
[ externes Bild ]
Hier im Firefox:
[ externes Bild ]
Hab im
Internet Explorer extra vorher nochmal alles gelöscht (Cookies, Verlauf und offline Inhalte).
Aber wenn Du mir sagst, dass es funktioniert wie es soll, dann glaub ich Dir natürlich.
Dank Dir übrigens für Deine Hilfe!
Editiert
Verfasst: 03.06.2006 01:20
von RobertC
Ich meinte eigentlich die Anzeigen im Profil bzw. in der Memberliste.
Aber der Bereich auf der Indexseite lässt sich natürlich auch ausblenden.
Suche dazu in der index_body.tpl den folgenden Code ...
Code: Alles auswählen
<!-- Start add - Last visit MOD -->
<tr>
<td class="row1" align="left"><span class="gensmall">{L_USERS_TODAY} {L_USERS_LASTHOUR}<br />{USERS_TODAY_LIST}</br></span></td>
</tr>
<!-- Start add - Last visit MOD -->
und ersetze Ihn durch diesen hier.
Code: Alles auswählen
<!-- Start add - Last visit MOD -->
<!-- BEGIN switch_user_is_moderator -->
<tr>
<td class="row1" align="left"><span class="gensmall">{L_USERS_TODAY} {L_USERS_LASTHOUR}<br />{USERS_TODAY_LIST}</br></span></td>
</tr>
<!-- END switch_user_is_moderator -->
<!-- Start add - Last visit MOD -->
Verfasst: 03.06.2006 01:35
von Rule23
Achso ist das, dann hab ich nur die Funktion falsch verstanden. Ich dachte nämlich, der versteckt alles was der Mod bewirkt für alle anderen ausser den Admins.
Ich wollte es eigentlich ja auch sichtbar lassen und hab beim testen eben gedacht, es sei ein Bug. Aber gut, dass Du uns mal erklärt hast wie es denn geht, wenn man es mal unsichtbar machen möchte.
Thx und greetz
Rule23