怎么验证用户名是不是存在
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么验证用户名是不是存在相关的知识,希望对你有一定的参考价值。
做了个注册页面,验证用户是否 存在 总是显示出错 代码如下:private int UserChecked()SqlConnection conn = new SqlConnection(@"server=烟客少爷;database=Register;Trusted_Connection=True");SqlCommand cmd = new SqlCommand("Select* from Register where userID='"+tb_userName.Text.Trim()+"'", conn);int i = 0;tryconn.Open();SqlDataReader sdr= cmd.ExecuteReader();if (sdr.Read ())i = 1;Label1.Text = "用户名已经存在!";elseLabel1.Text = "恭喜你,此用户名可用!";catch (System.Exception ee)//Response.Write ("<script language=javascriptalert('"+ee.Message.ToString()+"')</script");finallyconn.Close();return i;显示 SqlCommand cmd = new SqlCommand("Select* from Register where userID='"+tb_userName.Text.Trim()+"'", conn);这里有错。就是检查数据库中是否存在这个用户名;我新手拜托了有这样例子的代码更好 参考技术A 回答程序的开发过程中,经常需要判断用户输入的用户名是否正确,可以通过对比用户输入的用户名字符串是否与数据库中或者已经存在集合中的字符串相同,来决定用户输入的用户名是否正确。Java的基本数据类型可以使用“==”判断两个操作数是否相等,但是对于Java类创建的对象就不能使用这种方法来判断是否相等了。字符串是基本数据类型之外的,也就是说字符串在Java中是对象。本实例将通过字符串相等判断来实现用户名验证。本实例调用了String类的equals()方法来判断两个字符串内容是否相同,这个方法是从Object类中继承的。在Java语言中,默认所有类都是Object类的子类,也就是说只要是对象,都会重写或直接使用Object类的equals()方法,String类就重写了这个方法实现判断字符串内容是否相同
jQuery验证远程方法使用以检查用户名是不是已经存在
【中文标题】jQuery验证远程方法使用以检查用户名是不是已经存在【英文标题】:jQuery Validate remote method usage to check if username already existsjQuery验证远程方法使用以检查用户名是否已经存在 【发布时间】:2013-05-10 17:42:00 【问题描述】:我想使用 jQuery.validate 验证用户名是否存在于数据库中,所以这是我目前所拥有的:
jQuery:
$("#signupForm").validate(
rules:
username:
required: true,
minlength: 3,
remote: "check-username.php"
,
messages:
username:
remote: "This username is already taken! Try another."
);
检查用户名.php:
<?php
require_once "./source/includes/data.php";
header('Content-type: application/json');
$name = mysql_real_escape_string($_POST['username']);
$check_for_username = mysql_query("SELECT username FROM mmh_user_info WHERE username='$name'");
if (mysql_num_rows($check_for_username) > 0)
$output = true;
else
$output = false;
echo json_encode($output);
?>
此代码始终显示用户名被使用的错误,即使它不是。
我正在使用 jQuery Mobile 1.9.1
提前致谢。
【问题讨论】:
你能再解释一下这个问题吗?哪一部分似乎有效,哪一部分无效? 在注册页面,不检查用户是否被带走。 打开网络标签。是否在提交时将请求发送到“check-username.php”页面?如果有,响应代码是什么(200,404,500 等),响应内容是什么? 好的,很抱歉,没有向 check-username.php 发送请求,该文件位于错误的位置。我修复了它,但现在它总是显示用户名已被使用,即使它不是! 【参考方案1】:我已经设法通过更改我使用的 PHP 技术来实现它,这是我的 PHP:
<?php
require_once "./source/includes/data.php";
header('Content-type: application/json');
$request = $_REQUEST['username'];
$query = mysql_query("SELECT * FROM mmh_user_info WHERE username ='$username'");
$result = mysql_num_rows($query);
if ($result == 0)
$valid = 'true';
else
$valid = 'false';
echo $valid;
?>
感谢大家的帮助:)
【讨论】:
5 年过去了,仍然对我有帮助。来自我的支持【参考方案2】:我有两个资源可供查看。
来自验证插件的官方示例: http://jquery.bassistance.de/validate/demo/milk/
jQuery论坛解决方案: http://forum.jquery.com/topic/jquery-validation-plugin-remote-validation-problem-locks-up
据我所知,可能的解决方案是不需要对响应进行 json 编码。由于 json 需要键值对,因此仅提供值是行不通的。因此,请尝试将其作为“真”或“假”字符串回显。
其次,验证使用 GET 作为表单提交方法,而不是 POST。
注意:刚刚找到可能的解决方案问题 jQuery Remote validation
【讨论】:
实际上确实有点作用。不幸的是,我对 jQuery Mobile 并不了解。如果其他人是,他们应该随时纠正我们。 :)以上是关于怎么验证用户名是不是存在的主要内容,如果未能解决你的问题,请参考以下文章