Добавить нового пользователя в пользовательские таблицы Wordpress - PullRequest
0 голосов
/ 20 сентября 2011

У меня есть пользовательская таблица в теме для добавления пользовательских данных в базу данных.затем хочу добавить данные через пользовательскую таблицу в базу данных.

    <form action="" method="post">
    <table>
      <tr>
        <td>User Name:</td>
        <td><input type="text" name="user"/> </td>
      </tr>
      <tr>
        <td>Pass word:</td>
        <td><input type="password" name="pass"/></td>
      </tr>
      <tr>
        <td>Website:</td>
        <td><input type="text" name="url"/></td>
      </tr>
    </table>
        <input type="submit" name="scroll_submit" />
        </form>


<?php 
if(isset($_POST['scroll_submit'])){
  $username = $_POST['user'];
  $pass = $_POST['pass'];
  $url = $_POST['url'];

   wp_insert_user(array(
    'user_pass'  => $pass,
    'user_login' => $username,
    'user_url' => $url
   ));
   }

я могу добавить 1 запись в пользовательскую таблицу, но не другую ... в чем проблема, плз, помогите мне ..

1 Ответ

0 голосов
/ 20 сентября 2011

как насчет ...

 if(isset($_POST['scroll_submit'])){

   $username = $_POST['user'];
   $pass = $_POST['pass'];
   $url = $_POST['url'];
   // YOU NEED AN EMAIL ADDRESS TO CREATE AN ACCOUNT
   $useremail = sanitize_user($_POST['email']); 

   if($pass==''){
      // Generate random 12 Character password
      $pass = wp_generate_password( 12, false );
   }

   // Check if that username is taken already
   if ( username_exists( $username ) ){
     die("Im sorry that Username Is in Use! please choose another");
   }else{
     echo "Username is available...";
   }

   // CREATES WP USER ACCOUNT
   $user_id = wp_create_user( $username, $pass, $useremail );

   // SENDS EMAIL NOTIFICATION
   wp_new_user_notification($user_id, $pass); 

   // Use 'update_user_meta()' to add or update the user information fields.
   update_user_meta($user_id, 'user_url', $url );
   echo "New User Created ID: ".$user_id;
 }

это проверит пароль, если пароля нет, затем сгенерирует случайный пароль из 12 символов, проверит, используется ли это имя пользователя ...

Создайте новую учетную запись пользователя wp, отправьте электронное письмо администратору, чтобы сообщить им о создании нового пользователя, отправьте электронное письмо пользователю с именем пользователя и паролем,

Добавьтеинформация о пользователе в таблицу wp_user_meta с использованием нового идентификационного номера пользователя.

массив для универсального пользователя вернет:

([ID] => 6
  [user_login] => MyUserName
  [user_pass] => $KJSHDFLUHWSEIFNPOSUDHVSJDN
  [user_nicename] => MyDisplayNicename
  [user_email] => Myemail@yourDomain.com
  [user_url] => 
  [user_registered] => 2011-09-20 10:00:00
  [user_activation_key] => 
  [user_status] => 0
  [display_name] => My Display Name
  [wp_capabilities] => Array
  (
    [subscriber] => 1
  )
  [jabber] => 
  [yim] => 
  [aim] => 
  [show_admin_bar_admin] => false
  [use_ssl] => 0
  [show_admin_bar_front] => true
  [admin_color] => fresh
  [comment_shortcuts] => false
  [rich_editing] => true
  [description] => 
  [nickname] => MyNickName
  [last_name] => 
  [first_name] => 
  [wp_user_level] => 0
  [user_level] => 0
  [user_firstname] => 
  [user_lastname] => 
  [user_description] => 
)

с использованием update_user_meta ($ user_id, 'WHATYOUWANTTOCHANGE', $ url);просто замените WHATYOUWANTTOCHANGE именем массива, то есть: user_firstname обновит / добавит имя для пользователя ...

update_user_meta($user_id, 'user_firstname', $firstname);
update_user_meta($user_id, 'user_lastname', $lastname);
update_user_meta($user_id, 'user_description', $user_desc);

просмотрите wp reference

также не забудьте дезинфицировать пользовательский ввод;чтобы избежать каких-либо SQL-инъекций и т. д., никогда не доверяйте никаким пользовательским данным ....

всегда stripslashes , mysql_real_escape_string , htmlspecialchars ,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...