Seite 1 von 2

Wichtige Frage zum Update 14 auf 15

Verfasst: 04.07.2005 11:12
von Ranger-Joe
In der Anleitung zum Updaten steht folgendes:

Code: Alles auswählen

admin/admin_ug_auth.php
FIND
Code:          if( !($result = $db->sql_query($sql)) ) 
         { 
            message_die(GENERAL_ERROR, "Couldn't update user level", "", __LINE__, __FILE__, $sql);

AFTER, ADD
Code:          } 
      } 

      $sql = 'SELECT user_id FROM ' . USER_GROUP_TABLE . " 
         WHERE group_id = $group_id"; 
      $result = $db->sql_query($sql); 

      $group_user = array(); 
      while ($row = $db->sql_fetchrow($result)) 
      { 
         $group_user[$row['user_id']] = $row['user_id']; 
      } 
      $db->sql_freeresult($result); 

      $sql = "SELECT ug.user_id, COUNT(auth_mod) AS is_auth_mod 
         FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug 
         WHERE ug.user_id IN (" . implode(', ', $group_user) . ") 
            AND aa.group_id = ug.group_id 
            AND aa.auth_mod = 1 
         GROUP BY ug.user_id"; 
      if ( !($result = $db->sql_query($sql)) ) 
      { 
         message_die(GENERAL_ERROR, 'Could not obtain moderator status', '', __LINE__, __FILE__, $sql); 
      } 

      while ($row = $db->sql_fetchrow($result)) 
      { 
         if ($row['is_auth_mod']) 
         { 
            unset($group_user[$row['user_id']]); 
         } 
      } 
      $db->sql_freeresult($result); 

      if (sizeof($group_user)) 
      { 
         $sql = "UPDATE " . USERS_TABLE . " 
            SET user_level = " . USER . " 
            WHERE user_id IN (" . implode(', ', $group_user) . ")"; 
         if ( !($result = $db->sql_query($sql)) ) 
         { 
            message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);

Das Problem ist, ich habe diesen Teil 2 mal!!!

Für welchen Teil gild das??

Hier ist mal Zeile 504 bis 524 meiner Datei.
Kann mir jemand helfen??

Code: Alles auswählen

		if ( $set_mod != '' )
		{
			$sql = "UPDATE " . USERS_TABLE . " 
				SET user_level = " . MOD . " 
				WHERE user_id IN ($set_mod)";
			if( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update user level", "", __LINE__, __FILE__, $sql);
			}
		}

		if ( $unset_mod != '' )
		{
			$sql = "UPDATE " . USERS_TABLE . " 
				SET user_level = " . USER . " 
				WHERE user_id IN ($unset_mod)";
			if( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update user level", "", __LINE__, __FILE__, $sql);
			}
		}

Verfasst: 04.07.2005 11:17
von Acid
Der Code muss nach dem zweiten, zuletzt gefundenen Codeblock eingefügt werden.

(Wenn man bei sowas unschlüssig ist, einfach die Originaldateien der aktuellsten Version anschauen.)

PS: Danach dann gleich auf 2.0.16 updaten! ;)

Verfasst: 04.07.2005 11:22
von Ranger-Joe
Ich danke Dir! Klar geh ich dann gleich auf die 16er Version. Das Ganze Programm bekommt mein Bord!

Verfasst: 04.07.2005 14:25
von Ranger-Joe
Nochmal ne kurze Frage, als vorletzte anweisung steht:
In addition to the changes described above, extra spaces following the ?> line were removed from the end of these files:

admin/admin_forums.php
admin/admin_smilies.php
includes/functions_selects.php
includes/template.php
includes/topic_review.php
posting.php
privmsg.php
viewonline.php
viewtopic.php
Was bedeutet das??
Das ich die Dateien rüberladen soll??

Mein Englisch ist sehr schlecht, kann mir jemand helfen??

Verfasst: 04.07.2005 14:31
von Markus67
Hi ...

wenn in den php-Dateien nach ?> nochmal Leerzeilen kommen gibt das Fehlermeldungen. Wenn du die Dateien bearbeitest achte einfach darauf dass danach keine Leezeilen mehr kommen ... dann passt das ganze :wink:

Markus

Verfasst: 04.07.2005 14:33
von Ranger-Joe
:oops: Danke!

Verfasst: 04.07.2005 15:20
von Ranger-Joe
So, habe alles erledigt und hoch geladen. Lief auch alles, bis zu dem moment wo ich mich Ausgeloggt habe. danach kam dann das Hier:
phpBB : Kritischer Fehler

Error creating new session

DEBUG MODE

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

INSERT INTO phpbb_sessions (session_id, session_user_id, session_start, session_time, session_ip, session_page, session_logged_in, session_admin) VALUES ('332155a4576ff3d0be206a56e6f8f33a', -1, 1120483333, 1120483333, '54bd99c9', 0, 0, 0)

Line : 172
File : sessions.php

Was ist falsch??

Verfasst: 04.07.2005 15:40
von Christian Benz
Hi,

update_to_latest.php nicht ausgeführt?

Aus der Update-Anleitung:
After you have finished this tutorial, you have to upload the install/update_to_latest.php file, execute it and then delete it from your webspace.
Gruß,
Chris

Verfasst: 04.07.2005 15:55
von Ranger-Joe
Alles klar, hab ich nun gemacht.
Aber nun kommt das Hier:
Parse error: parse error, unexpected T_VARIABLE in /home/www/htdocs/a6-freunde.com/includes/sessions.php on line 166

Fatal error: Call to undefined function: session_pagestart() in /home/www/htdocs/a6-freunde.com/index.php on line 31
Hier die betreffenden Zeilen:
Zeilen 28-35 der index.php

Code: Alles auswählen

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$pagecounter = "1";
//
// End session management

Zeilen 160-174 der session.php

Code: Alles auswählen

if ( !$db->sql_query($sql) || !$db->sql_affectedrows() )
	{
		list($sec, $usec) = explode(' ', microtime()); 
      mt_srand((float) $sec + ((float) $usec * 100000)); 
      $session_id = md5(uniqid(mt_rand(), true));FIND

		$sql = "INSERT INTO " . SESSIONS_TABLE . "
			(session_id, session_user_id, session_start, session_time, session_ip, session_page, session_logged_in, session_admin, SearchBot)
			VALUES ('$session_id', $user_id, $current_time, $current_time, '$user_ip', $page_id, $login, $admin, '". $_SERVER["HTTP_USER_AGENT"] ."'
)";
		if ( !$db->sql_query($sql) )
		{
			message_die(CRITICAL_ERROR, 'Error creating new session', '', __LINE__, __FILE__, $sql);
		}
	}

Verfasst: 04.07.2005 17:08
von Christian Benz
Hallo,
$session_id = md5(uniqid(mt_rand(), true));FIND
Bist du sicher, dass dahinter "FIND" stehen soll? :wink: Hast du wohl versehentlich mitrein kopiert. Lösch das mal wieder raus.

Gruß,
Chris