View Single Post
  #2  
Old 9th October 2012, 10:26
adora adora is offline
Member
 
Join Date: Oct 2012
P2P
Posts: 1
Default
PHP 5.4
Pmbt 2.0.4 gold

i had to change the code a bit and its now tested with TSSE 7.2
Database count was 16120 user's, and the site now has 16098, I had to run the script about 6 times looks like it would do about 4k at a time. i ran it a few extra times to confirm it was done. I also have to double check my database numbers but i think that is what it was.

PHP Code:
<?php
if (defined('IN_PMBT'))die ("You can't include this file");
define("IN_PMBT",true);  
include(
"header.php");

# Table Names
$old_tableprefix "users"// Old table name
$new_tableprefix "torrent_users"//New Table Name

$query $db->sql_query("SELECT id, username, email, added, secret, passhash, uploaded, downloaded, status FROM {$old_tableprefix}") or sqlerr(__FILE__,__LINE__);

OpenTable("User Import");
echo 
"I will try to update user table --> ";
$count=0;
while (
$olduser $db->sql_fetchrow($query))
{
$id $olduser['id'];
$username $olduser['username'];
$email $olduser['email'];
$added $olduser['added'];
$uploaded $olduser['uploaded'];
$downloaded $olduser['downloaded'];
$tempass RandomAlpha(8);
$act_key RandomAlpha(32);
$status = ($olduser['status']=="confirmed")? :0;
                                                                        if(
$force_passkey){
                                                                                        do {
                                                                                                
$passkey ", '".RandomAlpha(32)."'";
                                                                                                
//Check whether passkey already exists
                                                                                                
$sqll "SELECT passkey FROM ".$new_tableprefix." WHERE passkey = '".$passkey."';";
                                                                                                
$resl mysql_query($sqll)OR print("error");
                                                                                                
$cnt = @mysql_num_rows($sqll);
                                                                                                @
mysql_free_result($resl);
                                                                                        } while (
$cnt 0);
                                                                                        
$passkeyrow ', passkey';
                                                                                        }else{
                                                                                        
$passkeyrow NULL;
                                                                                        
$passkey NULL;
                                                                                        }



$sqlnew "INSERT INTO ".$new_tableprefix." (id,username,clean_username,email,regdate,password,act_key,uploaded,downloaded,active".$passkeyrow.")
VALUES ('
$id', '$username', '".strtolower($username)."', '$email', '$added', '$tempass', '$act_key', '$uploaded', '$downloaded', '$status$passkey)";
$gonew $db->sql_query($sqlnew);
if(!
$gonew)echo "<br>Error:<br>Not able to creat ".$username." Maybe a duplicate Intry<br>";
$count++;
}

echo 
"Done..<br><br>Total {$count} users has been updaded...<br>Note: All users should recover their password...";
CloseTable();
include(
"footer.php");
?>

Last edited by adora; 9th October 2012 at 12:53.
Reply With Quote