这样安全吗?用户将数据插入数据库..?

时间:2010-12-17 14:21:56

标签: php wordpress wordpress-theming

我想让访问者可以从前端或(索引页面)注册而不是管理页面..

首先,我制作了模板页面,名称为:注册用户

但我担心如果用户可以做坏事(sql注入等等)..

这是我的代码..

if(!empty($_POST['user_name']) || !empty($_POST['email'])){
$user_login  = $_POST['user_name'];
$user_email  = $_POST['email'];
$random_password = wp_generate_password(5 , true );
wp_create_user( $user_login, $random_password, $user_email )

} else {
echo 'The user name or E-mail is empty';

}

另外,怎么知道这是电子邮件呢?

抱歉,我的语言不好> _<

4 个答案:

答案 0 :(得分:3)

您可以在wordpress中使用已包含的功能:

详细信息: http://codex.wordpress.org/Function_Reference/is_email

is_email()

<?php if ( is_email( 'email@domain.com' ) ) {
      echo 'email address is valid.';
} ?>

可能还想使用函数username_exists()

验证'用户名'

http://codex.wordpress.org/Function_Reference/username_exists

<?php  
       $username = $_POST['username'];
       if ( username_exists( $username ) )
           echo "Username In Use!";
       else
           echo "Username Not In Use!";
?>

答案 1 :(得分:3)

这取决于wp_create_user功能 - 是否为您清理/转发数据?如果没有,您可能需要自己完成(参见mysql_real_escape_string

答案 2 :(得分:3)

wp_create_user函数应该是安全的,只需将用户输入发送到。

第二部分由Jakub回答

答案 3 :(得分:3)