รบกวนหน่อยครับ จะเช็ค user ที่ซ้ำกับในฐานข้อมูลแล้วให้เตือนออกมาครับ
พอดีได้ code มาแล้วมาลองปรับแก้เองอีกที ครับ
ให้ดึงชื่อจากฐานข้อมูล แล้วมาใส่ใน อะเรย์แล้ว เทียบกับ ชื่อใหม่ที่เราจะ submit เข้ามาใหม่ครับ มันไม่สามารถเช็คได้ ไม่รุ้ว่ามันติดตรงไหนครับ ขอบคุณครับ
ไฟล์นี้ชื่อ index.html
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Username availability check using PHP and jQuery</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
<!-- http://www.itechroom.com-->
function checkUserName(usercheck)
{
$('#usercheck').html('<img src="images/ajax-loader.gif" />');
$.post("checkuser.php", {user_name: usercheck} , function(data)
{
if (data != '' || data != undefined || data != null)
{
$('#usercheck').html(data);
}
});
}
</script>
</head>
<body>
<div style="width:800px; margin:0 auto;">
<div style=" padding:20px 0px;"><h2>Username availability check using PHP and jQuery</h2></div>
<div style="padding:100px 0px 10px 10px;">
Username : <input type="text" name="username" id="username" onblur="checkUserName(this.value)" />
<span id="usercheck" style="padding-left:10px; ; vertical-align: middle;"></span>
</div>
<div style="padding:10px 0px 50px 10px;">
Password : <input type="password" name="pwd" />
</div>
<div style="padding:0px 0px 50px 10px;"> For testing, registered username are: itechroom, trialuser </div>
<div align="center"><h3>Visit <a href="http://wwww.itechroom.com" target="_blank"> www.itechroom.com</a> for more.</h3></div>
</div>
</body>
</html>
ไฟล์นี้ชื่อ checkuser.php
$host = "localhost"; // ชื่อ host หรือ ip ที่ใช้
$userhost = "root"; // ชื่อ user ที่ใช้ในการล็อกอิน
$passhost = "1234"; // password ที่ใช้ในการล็อกอิน
$database = "itoffsideapp"; // ชื่อ Database
$conn = mysql_connect($host,$userhost,$passhost);
if(!$conn){
echo "ไม่สามารถเชื่อมต่อฐานข้อมูลได้";
}
mysql_query("use $database"); // เลือกฐานข้อมูลที่ใช้
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
$query = "SELECT name FROM member";
$data = mysql_query($query); //query ข้อมูล
$arr_user = mysql_fetch_array($data); //อันนี้ที่ลองทำเพิ่ม เก็บชื่อในฐานข้อมูลลง อะเรย์
//$arr_user=array("itechroom", "trialuser"); อันนี้จากโค้ดเดิม ถ้าใช้อันนี้มันสามารถหาได้ว่า ชื่อที่เรากรอกไปมีแล้ว หรือยัง
$username=$_POST['user_name'];
if(in_array($username,$arr_user))
{echo '<span class="error">Username already exists.</span>';exit;}
else if(strlen($username) < 6 || strlen($username) > 15){echo '<span class="error">Username must be 6 to 15 characters</span>';}
else if (preg_match("/^[a-zA-Z1-9]+$/", $username))
{
echo '<span class="success">Username is available.</span>';
}
else
{
echo '<span class="error">Use alphanumeric characters only.</span>';
}
Tag : PHP, MySQL, Windows
ประวัติการแก้ไข 2016-01-20 16:21:05 2016-01-20 16:22:58 2016-01-20 16:25:23
Date :
2016-01-20 16:19:21
By :
arm_s
View :
1385
Reply :
2
Code (PHP)
<?php
$host = "localhost"; // ชื่อ host หรือ ip ที่ใช้
$userhost = "root"; // ชื่อ user ที่ใช้ในการล็อกอิน
$passhost = "1234"; // password ที่ใช้ในการล็อกอิน
$database = "itoffsideapp"; // ชื่อ Database
$conn = mysql_connect($host,$userhost,$passhost);
if(!$conn){
echo "ไม่สามารถเชื่อมต่อฐานข้อมูลได้";
}
mysql_query("use $database"); // เลือกฐานข้อมูลที่ใช้
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
$username=$_POST['user_name'];
// ตรงนี้ไม่ชัวร์ไม่เคยใช้ฟังชั่นนี้ ถ้า มันต้องเท่ากับ false ก็ลอง ใส่ ! ข้างหน้าไป
if(preg_match("/^[a-zA-Z1-9]+$/", $username)){
echo '<span class="error">Use alphanumeric characters only.</span>';
exit;
}
if(strlen($username) < 6 || strlen($username) > 15){
echo '<span class="error">Username must be 6 to 15 characters</span>';
exit;
}
$query = "SELECT name FROM member where username = '$username' limit 0 , 1";
$data = mysql_query($query); //query ข้อมูล
$row= mysql_num_rows($data);
if($row > 0){
echo '<span class="error">Username already exists.</span>';
exit;
}else{
echo '<span class="success">Username is available.</span>';
exit;
}
?>
ประวัติการแก้ไข 2016-01-20 16:32:20
Date :
2016-01-20 16:28:31
By :
progamer2000
ได้แล้วครับ ขอบคุณครับ
index.php
Code (PHP)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>An AJAX Username Verification Tool</TITLE>
<META NAME="Keywords" CONTENT="form, username, checker">
<META NAME="Description" CONTENT="An AJAX Username Verification Script">
<script type="text/javascript" src="jquery-1.2.6.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css" />
<SCRIPT type="text/javascript">
pic1 = new Image(16, 16);
pic1.src = "loader.gif";
$(document).ready(function(){
$("#username").change(function() {
var usr = $("#username").val();
if(usr.length >= 4)
{
$("#status").html('<img src="loader.gif" align="absmiddle"> Checking availability...');
$.ajax({
type: "POST",
url: "check_duplicate.php",
data: "username="+ usr,
success: function(msg){
$("#status").ajaxComplete(function(event, request, settings){
if(msg == 'OK')
{
$("#username").removeClass('object_error'); // if necessary
$("#username").addClass("object_ok");
$(this).html(' <img src="tick.gif" align="absmiddle">');
}
else
{
$("#username").removeClass('object_ok'); // if necessary
$("#username").addClass("object_error");
$(this).html(msg);
}
});
}
});
}
else
{
$("#status").html('<font color="red">The username should have at least <strong>4</strong> characters.</font>');
$("#username").removeClass('object_ok'); // if necessary
$("#username").addClass("object_error");
}
});
});
//-->
</SCRIPT>
</HEAD>
<BODY>
<center>
<div align="center">
<center>NOTE: Already existing members in this demo: <STRONG>john, michael, terry, steve, donald</STRONG></center><br /><br />
<form>
<table width="700" border="0">
<tr>
<td width="200"><div align="right">Username: </div></td>
<td width="100"><input id="username" size="20" type="text" name="username"></td>
<td width="400" align="left"><div id="status"></div></td>
</tr>
<tr>
<td width="200"><div align="right">Password: </div></td>
<td width="100"><input size="20" type="text" name="password"></td>
<td width="400" align="left"><div id="status"></div></td>
</tr>
<tr>
<td width="200"> </td>
<td width="100"> </td>
<td width="400" align="left"> </td>
</tr>
</table>
</form>
</div>
</center>
</BODY>
</HTML>
check_duplicate.php
Code (PHP)
<?php
/*
if(isSet($_POST['username']))
{
$usernames = array('john','michael','terry', 'steve', 'donald');
$username = $_POST['username'];
if(in_array($username, $usernames))
{
echo '<font color="red">The nickname <STRONG>'.$username.'</STRONG> is already in use.</font>';
}
else
{
echo 'OK';
}
}
*/
// This is a sample code in case you wish to check the username from a mysql db table
if(isSet($_POST['username']))
{
$username = $_POST['username'];
$dbHost = 'localhost'; // usually localhost
$dbUsername = 'root';
$dbPassword = '1234';
$dbDatabase = 'itoffsideapp';
$db = mysql_connect($dbHost, $dbUsername, $dbPassword) or die ("Unable to connect to Database Server.");
mysql_select_db ($dbDatabase, $db) or die ("Could not select database.");
$sql_check = mysql_query("select name from member where name='".$username."' ") or die(mysql_error());
if(mysql_num_rows($sql_check))
{
echo '<font color="red">The nickname <STRONG>'.$username.'</STRONG> is already in use.</font>';
}
else
{
echo 'OK';
}
}
?>
Date :
2016-01-21 10:15:23
By :
arm_s
Load balance : Server 03