我感兴趣的是使用TankAuth for CodeIgniter在批处理中创建批量用户/密码。我在CI论坛上问了这个问题,但没有得到任何答复:
http://codeigniter.com/forums/viewthread/110993/P330/#837327
除了我的帖子之外,Google搜索并不是第三个结果,也是一堆无关的网站。
http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=create+batch+users+tankauth
有人使用递归算法成功地完成了这个任务吗?如果是这样的话,你能发布一些代码让我走上正确的道路吗?谢谢!
软件版本:
CI 1.7.3
TankAuth 1.0.7
PHP 5.x
编辑2/15:
如果有人在寻找解决这个问题的方法,下面的函数基本上与我使用的函数相同(还有一些其他参数,但这应该会让您开始使用):
function batchReg()
{
$this->load->model('mymodel');
// connect to the database
$this->mymodel->dbconnect();
// build it
$query = "SELECT user, email, pass from newusers ORDER BY user ASC";
// ship it
$result = mysql_query($query);
// loop it
while ($row = mysql_fetch_array($result))
{
$data = $this->tank_auth->create_user($row['user'], $row['email'], $row['pass'], FALSE);
print_r($data);
echo "<p>";
}
}只需从控制器中选择batchReg()就可以将其付诸实施!
发布于 2011-02-02 03:26:04
听起来像是一个简单的循环操作
不知怎么地(不管源是什么),都可以像数组$user_list那样以可迭代的形式获取用户名。
我们会说它看起来像这样
Array(
Array(
[username] => '...',
[email] => '...',
[password] => '', //leave password empty
),
Array(
[username] => '...',
[email] => '...',
[password] => '', //leave password empty
),
... etc.
)然后创建一个简单的循环例程来处理新的注册,将密码存储回数组中,这样您就可以获得完整的登录列表、新的(随机)密码和电子邮件。
//loop by referance in order to properly store the generated password
foreach($user_list as &$user) {
//generate 8 char password and store it
$user['password'] = substr(uniqid(),2,8);
//run register routine (not sure on tank auth's specific syntax
$this->tankauth->register($user['username'],$user['email'],$user['password'],FALSE);
}最后,您的$user_list包含用户的所有新密码。
https://stackoverflow.com/questions/4867979
复制相似问题