Frage zum Last Visit Mod(Einbau)...

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Frage zum Last Visit Mod(Einbau)...

Beitrag von phpBBNoob »

Hi,

diesmal Frage ich bevor ich es verbocke... werde irgendwie nicht schlau aus dem Part hier:

Code: Alles auswählen

# 
#-----[ FIND ]------------------------------------------------ 
#
if (
{// (
$last_visit = (

$sql = "UPDATE " . USERS_TABLE . " 
SET

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
if

# 
#-----[ IN-LINE BEFORE, ADD ]--------------------------------- 
# 
//

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
{

# 
#-----[ IN-LINE BEFORE, ADD ]--------------------------------- 
# 
//

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
user_lastvisit = $last_visit

# 
#-----[ IN-LINE AFTER, ADD ]---------------------------------- 
#
, user_lastlogon = " . time() .  ", user_totallogon=user_totallogon+1
und bei mir sieht ja der Code so bisher aus:

Code: Alles auswählen

if ( $user_id != ANONYMOUS )
	{// ( $userdata['user_session_time'] > $expiry_time && $auto_create ) ? $userdata['user_lastvisit'] : ( 
		$last_visit = ( $userdata['user_session_time'] > 0 ) ? $userdata['user_session_time'] : $current_time; 

		if (!$admin)
		{
			$sql = "UPDATE " . USERS_TABLE . " 
				SET user_session_time = $current_time, user_session_page = $page_id, user_lastvisit = $last_visit
				WHERE user_id = $user_id";
			if ( !$db->sql_query($sql) )
			{
				message_die(CRITICAL_ERROR, 'Error updating last visit time', '', __LINE__, __FILE__, $sql);
			}
		}

		$userdata['user_lastvisit'] = $last_visit;

		$sessiondata['autologinid'] = (!$admin) ? (( $enable_autologin && $sessionmethod == SESSION_METHOD_COOKIE ) ? $auto_login_key : '') : $sessiondata['autologinid'];
		$sessiondata['userid'] = $user_id;
	}
Mein Problem ist, ich werde nicht schlau welches if und welche Klammern gemeint sind und ich jetzt deswegen erstmal keinen Fehler machen will...

Wäre nett wenn mir einer helfen kann :)
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

Hi ...

so sollte es danach aussehen .. :wink:

Code: Alles auswählen

// if ( $user_id != ANONYMOUS ) 
// {// ( $userdata['user_session_time'] > $expiry_time && $auto_create ) ? $userdata['user_lastvisit'] : ( 
      $last_visit = ( $userdata['user_session_time'] > 0 ) ? $userdata['user_session_time'] : $current_time; 

      if (!$admin) 
      { 
         $sql = "UPDATE " . USERS_TABLE . " 
            SET user_session_time = $current_time, user_session_page = $page_id, user_lastvisit = $last_visit, user_lastlogon = " . time() .  ", user_totallogon=user_totallogon+1 
            WHERE user_id = $user_id"; 
         if ( !$db->sql_query($sql) ) 
         { 
            message_die(CRITICAL_ERROR, 'Error updating last visit time', '', __LINE__, __FILE__, $sql); 
         } 
      } 

      $userdata['user_lastvisit'] = $last_visit; 

      $sessiondata['autologinid'] = (!$admin) ? (( $enable_autologin && $sessionmethod == SESSION_METHOD_COOKIE ) ? $auto_login_key : '') : $sessiondata['autologinid']; 
      $sessiondata['userid'] = $user_id; 
   }
Markus
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

Hm, ich glaub eher so...

Code: Alles auswählen

// if ( $user_id != ANONYMOUS ) 
// {// ( $userdata['user_session_time'] > $expiry_time && $auto_create ) ? $userdata['user_lastvisit'] : ( 
      $last_visit = ( $userdata['user_session_time'] > 0 ) ? $userdata['user_session_time'] : $current_time; 

      if (!$admin) 
      { 
         $sql = "UPDATE " . USERS_TABLE . " 
            SET user_session_time = $current_time, user_session_page = $page_id, user_lastvisit = $last_visit, user_lastlogon = " . time() .  ", user_totallogon=user_totallogon+1 
            WHERE user_id = $user_id"; 
         if ( !$db->sql_query($sql) ) 
         { 
            message_die(CRITICAL_ERROR, 'Error updating last visit time', '', __LINE__, __FILE__, $sql); 
         } 
      } 

      $userdata['user_lastvisit'] = $last_visit; 

      $sessiondata['autologinid'] = (!$admin) ? (( $enable_autologin && $sessionmethod == SESSION_METHOD_COOKIE ) ? $auto_login_key : '') : $sessiondata['autologinid']; 
      $sessiondata['userid'] = $user_id; 
// }
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

@easygo ....

das steht dann aber erst weiter unten in der Anleitung ... und die wurde nicht gepostet :wink:

Markus
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Beitrag von phpBBNoob »

jo super danke :)
sowei so gut hat ja alles geklappt, den fehler in der deutschen Uebersetzung konnte ich noch wegmachen, aber nun zeigt er mir einen Fehler in der index.php an mit dem ich nix anfangen kann :(

Code: Alles auswählen

 
Couldn't retrieve user today data

DEBUG MODE

SQL Error : 1054 Unknown column 'user_lastlogon' in 'field list'

SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM phpbb_users WHERE user_id!="-1" AND user_session_time >= 1117922400 AND user_session_time< 1118008799 ORDER BY username

Line : 274
File : index.php
 
habe in der anleitung nachgesehen undhabe genau das gemacht was drin steht, der code ist folgender(Zeile 274 ist die mit if)

Code: Alles auswählen

$guests_today = $db->sql_numrows($result);
	$sql = 'SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM ' . USERS_TABLE . ' WHERE user_id!="'.ANONYMOUS.'" AND user_session_time >= '.$timetoday.' AND user_session_time< '.($timetoday+86399).' ORDER BY username'; 
	if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve user today data", "", __LINE__, __FILE__, $sql); 
	while( $todayrow = $db->sql_fetchrow($result)) 
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Beitrag von phpBBNoob »

Ein weiterer Fehler der Auftrifft wenn ich zum Beispiel auf Private Nachrichten klicken oder auf FAQ, Profil usw(Weil ezPortal geht ja noch...) ist folgender, und betrifft leider genau die session.php

Edit:
Portal geht doch nicht mehr(war nur immer zurück gegangen...)
Edit2: Hatte zuerst vergessen die last_visit_db_update.php ausführen, fehler ist aber immer noch der selbe :(

Code: Alles auswählen

phpBB : Kritischer Fehler

Error updating last visit time

DEBUG MODE

SQL Error : 1054 Unknown column 'user_lastlogon' in 'field list'

UPDATE phpbb_users SET user_session_time = 1118001843, user_session_page = -10, user_lastvisit = 1118001843, user_lastlogon = 1118001843, user_totallogon=user_totallogon+1 WHERE user_id = -1

Line : 186
File : sessions.php
Edit3: Habe die geänderten Files alle nochmal runtergenommen und mit dem Backup ersetzt, dann die geänderten Files wieder rauf gemacht und gleich die last_visit_db_update.php ausgeführt, jetzt läuft es :) Kann mich also auf den Birthday Mod stürzen *g* obwohl erstmal lieber ein Backup...
Edit4: Ein kleinen Fehler hab ich dochnoch endeckt und zwar wenn ich in Adminbereich gehe sieht der adminindex jetzt so aus *verwirrt*
[ externes Bild ]
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Beitrag von phpBBNoob »

hm.. weiß einer wie ich meinen normalen admin-index wiederherstelle bzw. wo ich da was falsch gemacht haben könnte? Weil hab gesucht und find es nicht :( Danke schonmal im vorraus..
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

Hi ...

Für die Anzeige ist die templates/subSilver/admin/index_body.tpl zuständig .. und die sollte so aussehen ...

Code: Alles auswählen

<h1>{L_WELCOME}</h1>

<p>{L_ADMIN_INTRO}</p>

<h1>{L_FORUM_STATS}</h1>

<table width="100%" cellpadding="4" cellspacing="1" border="0" class="forumline">
  <tr> 
	<th width="25%" nowrap="nowrap" height="25" class="thCornerL">{L_STATISTIC}</th>
	<th width="25%" height="25" class="thTop">{L_VALUE}</th>
	<th width="25%" nowrap="nowrap" height="25" class="thTop">{L_STATISTIC}</th>
	<th width="25%" height="25" class="thCornerR">{L_VALUE}</th>
  </tr>
  <tr> 
	<td class="row1" nowrap="nowrap">{L_NUMBER_POSTS}:</td>
	<td class="row2"><b>{NUMBER_OF_POSTS}</b></td>
	<td class="row1" nowrap="nowrap">{L_POSTS_PER_DAY}:</td>
	<td class="row2"><b>{POSTS_PER_DAY}</b></td>
  </tr>
  <tr> 
	<td class="row1" nowrap="nowrap">{L_NUMBER_TOPICS}:</td>
	<td class="row2"><b>{NUMBER_OF_TOPICS}</b></td>
	<td class="row1" nowrap="nowrap">{L_TOPICS_PER_DAY}:</td>
	<td class="row2"><b>{TOPICS_PER_DAY}</b></td>
  </tr>
  <tr> 
	<td class="row1" nowrap="nowrap">{L_NUMBER_USERS}:</td>
	<td class="row2"><b>{NUMBER_OF_USERS}</b></td>
	<td class="row1" nowrap="nowrap">{L_USERS_PER_DAY}:</td>
	<td class="row2"><b>{USERS_PER_DAY}</b></td>
  </tr>
  <tr> 
	<td class="row1" nowrap="nowrap">{L_BOARD_STARTED}:</td>
	<td class="row2"><b>{START_DATE}</b></td>
	<td class="row1" nowrap="nowrap">{L_AVATAR_DIR_SIZE}:</td>
	<td class="row2"><b>{AVATAR_DIR_SIZE}</b></td>
  </tr>
  <tr> 
	<td class="row1" nowrap="nowrap">{L_DB_SIZE}:</td>
	<td class="row2"><b>{DB_SIZE}</b></td>
	<td class="row1" nowrap="nowrap">{L_GZIP_COMPRESSION}:</td>
	<td class="row2"><b>{GZIP_COMPRESSION}</b></td>
  </tr>
</table>
<h1>{L_WHO_IS_ONLINE}</h1>

<table width="100%" cellpadding="4" cellspacing="1" border="0" class="forumline">
  <tr> 
	<th width="20%" class="thCornerL" height="25">&nbsp;{L_USERNAME}&nbsp;</th>
	<th width="20%" height="25" class="thTop">&nbsp;{L_STARTED}&nbsp;</th>
	<th width="20%" class="thTop">&nbsp;{L_LAST_UPDATE}&nbsp;</th>
	<th width="20%" class="thCornerR">&nbsp;{L_FORUM_LOCATION}&nbsp;</th>
	<th width="20%" height="25" class="thCornerR">&nbsp;{L_IP_ADDRESS}&nbsp;</th>
  </tr>
  <!-- BEGIN reg_user_row -->
  <tr> 
	<td width="20%" class="{reg_user_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{reg_user_row.U_USER_PROFILE}" class="gen">{reg_user_row.USERNAME}</a></span>&nbsp;</td>
	<td width="20%" align="center" class="{reg_user_row.ROW_CLASS}">&nbsp;<span class="gen">{reg_user_row.STARTED}</span>&nbsp;</td>
	<td width="20%" align="center" nowrap="nowrap" class="{reg_user_row.ROW_CLASS}">&nbsp;<span class="gen">{reg_user_row.LASTUPDATE}</span>&nbsp;</td>
	<td width="20%" class="{reg_user_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{reg_user_row.U_FORUM_LOCATION}" class="gen">{reg_user_row.FORUM_LOCATION}</a></span>&nbsp;</td>
	<td width="20%" class="{reg_user_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{reg_user_row.U_WHOIS_IP}" class="gen" target="_phpbbwhois">{reg_user_row.IP_ADDRESS}</a></span>&nbsp;</td>
  </tr>
  <!-- END reg_user_row -->
  <tr> 
	<td colspan="5" height="1" class="row3"><img src="../templates/subSilver/images/spacer.gif" width="1" height="1" alt="."></td>
  </tr>
  <!-- BEGIN guest_user_row -->
  <tr> 
	<td width="20%" class="{guest_user_row.ROW_CLASS}">&nbsp;<span class="gen">{guest_user_row.USERNAME}</span>&nbsp;</td>
	<td width="20%" align="center" class="{guest_user_row.ROW_CLASS}">&nbsp;<span class="gen">{guest_user_row.STARTED}</span>&nbsp;</td>
	<td width="20%" align="center" nowrap="nowrap" class="{guest_user_row.ROW_CLASS}">&nbsp;<span class="gen">{guest_user_row.LASTUPDATE}</span>&nbsp;</td>
	<td width="20%" class="{guest_user_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{guest_user_row.U_FORUM_LOCATION}" class="gen">{guest_user_row.FORUM_LOCATION}</a></span>&nbsp;</td>
	<td width="20%" class="{guest_user_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{guest_user_row.U_WHOIS_IP}" target="_phpbbwhois">{guest_user_row.IP_ADDRESS}</a></span>&nbsp;</td>
  </tr>
  <!-- END guest_user_row -->
</table>

<br />

<h1>{L_VERSION_INFORMATION}</h1>

{VERSION_INFO}

<br />
Was hast du denn versucht einzubauen? Weder der Last Visit MOD noch der Birthday MOD nehmen da Veränderungen vor.

Markus
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Beitrag von phpBBNoob »

jo super danke :) Das Problem war, das ich wohl einmal ausversehen die templates/subSilver/index_body.tpl, die ja bei Last Visit geaendert wird, in dem Admin.Ordner kopiert habe :( Jup wie Blöd man doch sein kann :(, aber jetzt weiß ich wenigstens wofuer die Datei gut ist ;)
phpBBNoob
Mitglied
Beiträge: 19
Registriert: 25.05.2005 19:04

Beitrag von phpBBNoob »

Ein kleinen Fehler muss ich doch übersehen haben und zwar wenn ich auf das Profil eines User klicke kommt folgende Fehlermeldung:

Parse error: parse error, unexpected T_DOUBLE_ARROW in /meineDaten/phpBB2/includes/usercp_viewprofile.php on line 205

Hier mal nen Link:
http://www.forum.majestic-five.de/inclu ... rofile.txt

Danke schonmal, waere echt stark wenn ihr mir nochmal helfen koennt :)
Antworten

Zurück zu „phpBB 2.0: Mod Support“