【发布时间】:2014-07-13 03:20:12
【问题描述】:
我用这个函数来检查用户ID以避免重复,这是代码:
<?php
require_once('includes/config.php');
if(isset($_GET['Uid'])){
$Uid = $_GET['UID'];
$Uid = preg_replace('/^.*?(AP[0-9]{1,}).*?$/i', '$1', $Uid );
$query = "SELECT user_id FROM user where user_id='$Uid'";
$users = mysqli_query($link, $query);
$result = mysqli_num_rows($users);
if($result > 0)
{
echo "Username is already taken, or invalid username!";
}
else {
echo '';
}
}
?>
我想要的是,接受前 2 个字母作为 AP,其余 8 个数字像这样
AP14000001
然后检查用户 ID 是否重复,如果用户 ID 重复,则会发出警告或将其接受为新 ID
提前致谢
【问题讨论】:
-
您能详细说明一下吗?这里有什么问题!?
-
亲爱的@revo 我已经建立了一个学术门户,只有一个管理员控制着整个门户。在用户注册部分,管理员使用他的学术 ID 注册每位教师,该 ID 以 AP14000001, AP14000002, AP14000003, .... 开头,我想要的是当管理员使用他的 ID 注册新用户时,系统会检查这个 ID 是不是上面写的 10 位有效,并检查它是否重复?
-
Jay Blanchard 解决方案是您想要的?
-
这究竟是什么意思 /^AP[0-9]{1,8}$/?? @revo
-
表示输入必须以
AP开头,后跟最多8 个数字,即输入末尾。
标签: php mysql regex duplicates