Powered By Blogger

Monday, June 13, 2016

add new user programmatically

<?php
/* Template Name: Useradd */
//get_header(); ?>


<?php
$servername = "xxx.com";
$username = "DBusername";
$password = "DBpassword";
$dbname = "DBname";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT `us`.`id`, `us`.`email`, `us`.`password`, `sk`.`name`, `ro`.`short_cut` FROM `user` as `us`
left join `skill` as `sk` on `sk`.`id`= `us`.`skill_id`
left join `role` as `ro` on `ro`.`id`= `us`.`role_id`
where `us`.`status` =1";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
    $email_address = $row['email'];
    $name = strstr($row['email'], '@', true);
    $tech = $row['name'];
    $role = $row['short_cut'];
    $passwd = $row['password'];
    }
} else {
    echo "0 results";
}
$conn->close();

//AES encode from innohrm
$key = 'woundezapbcfghijklmqrstvxy123456';
echo $pass = openssl_decrypt(base64_decode($passwd), "aes-256-cbc", $key, true, str_repeat(chr(0), 16));
echo '<br>';

if( null == username_exists( $email_address ) ) {

  // Generate the password and create the user
  echo $password = wp_generate_password( 12, false );
  $user_id = wp_create_user( $name, $pass, $email_address );

  //password reset
  //wp_set_password( $pass, $user_id );

  // Set the nickname
 /* wp_update_user(
    array(
      'ID'          =>    $user_id,
      'nickname'    =>    $email_address
    )
  );*/

  // Set the role
  $user = new WP_User( $user_id );
echo 'role : ';
  echo $role;

if($role == 'TL'){
if($tech == 'Android'){
  $user->set_role( 'android-tech-lead' );
  else{
  $user->set_role( 'editor' );
 }
}else{
 if($tech == 'Android'){
  $user->set_role( 'android' );
  }else{
  $user->set_role( 'authour' );
 }
}



  // Email the user
  wp_mail( $email_address, 'Welcome!', 'Your Password: ' . $password );

} // end if


?>


<?php get_footer(); ?>

No comments:

Post a Comment