Home >Backend Development >PHP Tutorial >How to merge discuz user scripts in PHP_php tips

How to merge discuz user scripts in PHP_php tips

WBOY
WBOYOriginal
2016-05-16 20:08:581016browse

The example in this article describes the method of merging discuz user scripts in PHP. Share it with everyone for your reference. The details are as follows:

A few days ago, I came across a project that required merging two discuz. One had a user level of around 120,000, and the other had a user level of 18,000. Needless to say, the one with 10,080 was definitely thrown away, leaving the one with 120,000. It started to feel difficult to handle. The data tables are all related. When a new user is registered, 8 tables have added records. I haven’t checked whether other tables have the possibility of modifying records. At that time, I felt that I couldn't sort out those tables for a while, so I searched for it and found the discuz tool. But it could only import items within 100,000, so I had to try it myself. After thinking about it, I directly inserted a line into the key table. As for the record, other tables may automatically complete the relevant data during the user operation, so I tried to export the original 18,000 users, and then wrote a PHP script to directly write the 18,000 users into the uncenter The member is inside and outside. I tested it and it was OK. Unfortunately, none of the user points or anything has passed, only the user's username and password have been retained.

Key steps:

1. Export the uncenter member database of the system you plan not to use into a sql file.
2. Run the script.

Disclaimer: This script only provides ideas. Please back up the data in advance before use. The author has nothing to do with data loss. (The code is simple, don’t spray)

set_time_limit(0);
$link = mysql_connect('localhost', 'ngjc', 'ohFt6yhHYvt5')
  or die('Could not connect: ' . mysql_error());
echo 'Connected successfully';
mysql_select_db('ngjc') or die('Could not select database');
require "sql.php";//此处换成导出的sql文件
$arrayerr=array();
$oknum=0;
$errnum=0;
mysql_query("SET NAMES utf8");
foreach($sqlarr as $sql)
{
  if(!mysql_query($sql))
  {
    $arrayerr[]=$sql;$errnum++;
  }
  else
  {
    $oknum++;
  }
}
echo "<pre class="brush:php;toolbar:false">OK:$oknum <br>errornum:$errnum <br> error:<br>";
print_r($arrayerr);
mysql_close($link);

I hope this article will be helpful to everyone’s PHP programming design.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn