|
From: Paul S. O. <ps...@us...> - 2002-05-09 14:30:32
|
Update of /cvsroot/phpbb/phpBB2
In directory usw-pr-cvs1:/tmp/cvs-serv26892
Modified Files:
update_script.php
Log Message:
IP related updates NOTE this is just MySQL! Do not run this if you are using other DB's or the necessary IP changes will not be implemented in future
Index: update_script.php
===================================================================
RCS file: /cvsroot/phpbb/phpBB2/update_script.php,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** update_script.php 30 Apr 2002 17:56:50 -0000 1.6
--- update_script.php 9 May 2002 14:08:36 -0000 1.7
***************
*** 3,6 ****
--- 3,16 ----
<?php
+ // --------------------------------
+ //
+ function decode_ip($int_ip)
+ {
+ $hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
+ return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
+ }
+ //
+ // --------------------------------
+
define('IN_PHPBB', 1);
$phpbb_root_path = './';
***************
*** 35,40 ****
echo '<span style="color:green">DONE</span><br /><br />';
- break;
-
case '.1.0 [20020420]':
switch ( SQL_LAYER )
--- 45,48 ----
***************
*** 59,63 ****
break;
}
- break;
case '.1.0 [20020421]':
$user_data_sql = "SELECT COUNT(user_id) AS total_users, MAX(user_id) AS newest_user_id FROM " . USERS_TABLE . " WHERE user_id <> " . ANONYMOUS;
--- 67,70 ----
***************
*** 87,91 ****
$sql[] = "INSERT INTO " . CONFIG_TABLE . " (config_name, config_value)
VALUES ('num_users', $user_count)";
! break;
default;
echo 'No updates made<br /><br />';
--- 94,134 ----
$sql[] = "INSERT INTO " . CONFIG_TABLE . " (config_name, config_value)
VALUES ('num_users', $user_count)";
! case '.1.0 [20020430]':
! switch ( SQL_LAYER )
! {
! case 'mysql':
! case 'mysql4':
! $sql[] = "ALTER TABLE " . BANLIST_TABLE . "
! MODIFY ban_email char(60) NULL,
! MODIFY ban_ip char(40) NULL";
! $sql[] = "ALTER TABLE " . DISALLOW_TABLE . "
! MODIFY disallow_username char(30) NOT NULL";
! $sql[] = "ALTER TABLE " . POSTS_TABLE . "
! MODIFY poster_ip char(40) NOT NULL,
! MODIFY post_username char(30) NULL";
! $sql[] = "ALTER TABLE " . PRIVMSGS_TABLE . "
! MODIFY privmsgs_subject char(60) NOT NULL,
! MODIFY privmsgs_ip char(40) NOT NULL";
! $sql[] = "ALTER TABLE " . SESSIONS_TABLE . "
! MODIFY session_ip char(40) NOT NULL";
! $sql[] = "ALTER TABLE " . USERS_TABLE . "
! ADD COLUMN user_ip char(40) NOT NULL";
! $sql[] = "ALTER TABLE " . VOTE_USERS_TABLE . "
! MODIFY COLUMN vote_user_ip char(40) NOT NULL";
! break;
!
! case 'mssql-odbc':
! case 'mssql':
! $sql[] = "";
! break;
!
! case 'postgresql':
! $sql[] = "";
! default:
! die("No DB LAYER found!");
! break;
! }
!
! break;
default;
echo 'No updates made<br /><br />';
***************
*** 96,100 ****
for($i = 0; $i < count($sql); $i++)
{
! if ( !($result = $db->sql_query($sql[$i])) )
{
die("Couldn't run update >> " . $sql[$i]);
--- 139,143 ----
for($i = 0; $i < count($sql); $i++)
{
! if ( !$db->sql_query($sql[$i]) )
{
die("Couldn't run update >> " . $sql[$i]);
***************
*** 102,109 ****
}
}
}
$sql = "UPDATE " . CONFIG_TABLE . "
! SET config_value = '.1.0 [20020430]'
WHERE config_name = 'version'";
if ( !($result = $db->sql_query($sql)) )
--- 145,267 ----
}
}
+
+ $sql_update = array();
+
+ switch ( $row['config_value'] )
+ {
+ case '.1.0 [20020430]':
+
+ $sql = "SELECT ban_id, ban_ip
+ FROM " . BANLIST_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ die("Couldn't select data >> " . $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ do
+ {
+ $sql_update[] = "UPDATE " . BANLIST_TABLE . "
+ SET ban_ip = '" . decode_ip($row['ban_ip']) . "'
+ WHERE ban_id = " . $row['ban_id'];
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ }
+
+ $sql = "SELECT post_id, poster_ip
+ FROM " . POSTS_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ die("Couldn't select data >> " . $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ do
+ {
+ $sql_update[] = "UPDATE " . POSTS_TABLE . "
+ SET poster_ip = '" . decode_ip($row['poster_ip']) . "'
+ WHERE post_id = " . $row['post_id'];
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ }
+
+ $sql = "SELECT privmsgs_id, privmsgs_ip
+ FROM " . PRIVMSGS_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ die("Couldn't select data >> " . $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ do
+ {
+ $sql_update[] = "UPDATE " . PRIVMSGS_TABLE . "
+ SET privmsgs_ip = '" . decode_ip($row['privmsgs_ip']) . "'
+ WHERE privmsgs_id = " . $row['privmsgs_id'];
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ }
+
+ $sql = "SELECT session_id, session_ip
+ FROM " . SESSIONS_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ die("Couldn't select data >> " . $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ do
+ {
+ $sql_update[] = "UPDATE " . SESSIONS_TABLE . "
+ SET session_ip = '" . decode_ip($row['session_ip']) . "'
+ WHERE session_id = '" . $row['session_id'] . "'";
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ }
+
+ $sql = "SELECT vote_id, vote_user_id, vote_user_ip
+ FROM " . VOTE_USERS_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ die("Couldn't select data >> " . $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ do
+ {
+ $sql_update[] = "UPDATE " . VOTE_USERS_TABLE . "
+ SET vote_user_ip = '" . decode_ip($row['vote_user_ip']) . "'
+ WHERE vote_id = " . $row['vote_id'] . "
+ AND vote_user_id = " . $row['vote_user_id'];
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ }
+ break;
+ }
+
+ if ( count($sql_update) )
+ {
+ echo 'Updating existing data :: ';
+ flush();
+
+ for($i = 0; $i < count($sql_update); $i++)
+ {
+ if ( !$db->sql_query($sql_update[$i]) )
+ {
+ die("Couldn't run update >> " . $sql_update[$i]);
+ }
+ }
+
+ echo "DONE<br /><br />\n";
+ }
}
$sql = "UPDATE " . CONFIG_TABLE . "
! SET config_value = '.1.0 [20020905]'
WHERE config_name = 'version'";
if ( !($result = $db->sql_query($sql)) )
|