aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/install/database_update.php
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@phpbb.com>2010-02-18 01:17:30 +0000
committerAndreas Fischer <bantu@phpbb.com>2010-02-18 01:17:30 +0000
commit30b83896a1718400307de7d531c16a152c0f6668 (patch)
tree94adbae30ae2636a0f8ee2f7581c6225e79725dc /phpBB/install/database_update.php
parent68cac354aac9df3866944685186733c4d7305aee (diff)
downloadforums-30b83896a1718400307de7d531c16a152c0f6668.tar
forums-30b83896a1718400307de7d531c16a152c0f6668.tar.gz
forums-30b83896a1718400307de7d531c16a152c0f6668.tar.bz2
forums-30b83896a1718400307de7d531c16a152c0f6668.tar.xz
forums-30b83896a1718400307de7d531c16a152c0f6668.zip
Fix Bug #57755 - Make user_email_hash() function independent from system's architecture.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10499 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/install/database_update.php')
-rw-r--r--phpBB/install/database_update.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/phpBB/install/database_update.php b/phpBB/install/database_update.php
index 909c390a9e..29d82be987 100644
--- a/phpBB/install/database_update.php
+++ b/phpBB/install/database_update.php
@@ -1603,6 +1603,34 @@ function change_database_data(&$no_updates, $version)
// No changes from 3.0.7-RC1 to 3.0.7
case '3.0.7-RC1':
+
+ $sql = 'SELECT user_id, user_email, user_email_hash
+ FROM ' . USERS_TABLE . '
+ WHERE user_type <> ' . USER_IGNORE . "
+ AND user_email <> ''";
+ $result = $db->sql_query($sql);
+
+ $i = 0;
+ while ($row = $db->sql_fetchrow($result))
+ {
+ $user_email_hash = phpbb_email_hash($row['user_email']);
+
+ if ($user_email_hash != $row['user_email_hash'])
+ {
+ $sql_ary = array(
+ 'user_email_hash' => $user_email_hash,
+ );
+
+ $sql = 'UPDATE ' . USERS_TABLE . '
+ SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
+ WHERE user_id = ' . (int) $row['user_id'];
+ __sql($sql, $errored, $error_ary, ($i % 100 == 0));
+
+ ++$i;
+ }
+ }
+ $db->sql_freeresult($result);
+
break;
}
}