Helpful pageEdit
- After installation, sysop username does not exist? Odessaukrain 20:13, 28 May 2009 (UTC)
CreateUser (without promote)Edit
I created a version of this maintenance script (createUser.php) that just creates a user, but doesn't do any promotion. I added settings of the user's real name as well. I hope this is helpful to people.
<?php /** * Maintenance script to create an account * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * http://www.gnu.org/copyleft/gpl.html * * @ingroup Maintenance * @author Rob Church <[email protected]> */ require_once( dirname(__FILE__) . '/Maintenance.php' ); class CreateUser extends Maintenance { public function __construct() { parent::__construct(); $this->mDescription = "Create a new user account"; $this->addArg( "username", "Username of new user" ); $this->addArg( "password", "Password to set" ); $this->addArg( "realname", "Real name for user" ); } public function execute() { $username = $this->getArg(0); $password = $this->getArg(1); $realname = $this->getArg(2); $this->output( wfWikiID() . ": Creating User:{$username}..." ); $user = User::newFromName( $username ); if( !is_object( $user ) ) { $this->error( "invalid username.", true ); } elseif( 0 != $user->idForName() ) { $this->error( "account exists.", true ); } # Try to set the password try { $user->setPassword( $password ); } catch( PasswordError $pwe ) { $this->error( $pwe->getText(), true ); } # Set real name $user->setRealName( $realname ); # Insert the account into the database $user->addToDatabase(); $user->saveSettings(); # Increment site_stats.ss_users $ssu = new SiteStatsUpdate( 0, 0, 0, 0, 1 ); $ssu->doUpdate(); $this->output( "done.\n" ); } } $maintClass = "CreateUser"; require_once( DO_MAINTENANCE );
Dmulter 17:19, 11 January 2011 (UTC)
Batch CreateEdit
Is there any way to use this script to create multiple users without having to execute it over and over again? --Zackmann08 (talk) 14:45, 17 July 2012 (UTC)
- Maybe create a script that puts the list of users in an array and then does a shell_exec foreach of them? Leucosticte (talk) 00:32, 30 December 2013 (UTC)