Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > เช็คค่า username เเละ email ซ้ำเเบบ ajax เเละต้องการเช็คค่าว่างของฟิลอื่นๆ เขียนฟังชันรวมกันได้ป่าวค่ะ



 

เช็คค่า username เเละ email ซ้ำเเบบ ajax เเละต้องการเช็คค่าว่างของฟิลอื่นๆ เขียนฟังชันรวมกันได้ป่าวค่ะ

 



Topic : 113231



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์




1.โค้ดเช็คค่า username เเละ email ซ้ำเเบบ ajax ถ้าต้องการเช็คค่าว่างของฟิลอื่นๆด้วยไม่ทราบว่าสามารถเขียนรวมกันได้ป่าวค่ะ โค๊ดด้านล่างนี้ค่ะ

Code (PHP)
 <script type="text/javascript">
  $('#submit').click(function()
	{
  	if($("#txtName").val()=="")
				{
					$("#name_error").html("*กรุณากรอกชื่อ-นามสกุล");
					return false;
				}
	if($("#txtEmail").val()!="")
				{
					
				if(($("#txtEmail").val().indexOf("@")==-1)||($("#txtEmail").val().indexOf(".")==-1))
					{
						$("#email_error").html("*รูปแบบ อีเมล ไม่ถูกต้อง");
						return false;
					}
				}
				else
				{
						$("#email_error").html("*กรุณากรอก อีเมล ");
						return false;
				}				
	if($("#txtUsername").val()=="")
				{
					$("#username-error").html("*กรุณากรอก ชื่อบัญชีผู้ใช้");
					return false;
				}
	if($("#txtPassword").val()=="")
				{
					$("#password-error").html("*กรุณากรอก รหัสผ่าน");
					return false;
				}
	if($("#txtConPassword").val()=="")
				{
					$("#conpassword-error").html("*กรุณากรอก ยืนยันรหัสผ่าน");
					return false;
				}			
	if($("#txtConPassword").val()!=$("#txtPassword").val())
				{
					$("#conpassword-error").html("*ยืนยัน รหัสผ่าน ไม่ตรงกัน");
					return false;
				}
	});
				</script>



2.ช่วยดูไฟล์ save_member.php ให้หน่อยค่ะ ไมทราบว่าผิดตรงไหนรึป่าว เพราะก่อนหน้านี้ใช้การเช็ค username ตอนที่มีการบันทึกลง ฐานข้อมูล ตอนนี้เข้าเคส ลงทะเบียนผิดพลาดอย่างเดียวค่ะ


ไฟล์register.php

Code (PHP)
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
        <!--<script type="text/javascript" src="js/regis.js"></script>-->
  <script type="text/javascript">
$(document).ready(function(){

	$("#txtUsername,#txtEmail").change(function(){

			$("#username-error").empty();
			$("#email-error").empty();

			$.ajax({ 
				url: "check_form.php" ,
				type: "POST",
				data: 'username-error=' +$("#txtUsername").val()+'&email-error='+$("#txtEmail").val()
			})
			.success(function(result) { 

					var obj = jQuery.parseJSON(result);

					if(obj != '')
					{
						  $.each(obj, function(key, inval) {

								   if($("#txtUsername").val() == inval["Username"])
								  {
									   $("#username-error").html("ชื่อผู้ใช้นี้มีอยู่แล้ว");
								  }

								   if($("#txtEmail").val() == inval["Email"])
								  {
									   $("#email-error").html("อีเมลนี้มีอยู่แล้ว");
								  }

						  });
					}

			});

		});

	});
</script>


<div id="block_regis_new">
<form action="save_member.php" method="post" name="form1" id="form1">
<table width="300px">
<tr>
<td><label><h4>&nbsp;ลงทะเบียน</h4></label></td>
</tr>

<tr>
<td>&nbsp;</td>
</tr>

<tr>
<td><label>&nbsp;ชื่อ -นามสกุล :</label>
</td>
</tr>

<tr>
<td><input name="txtName" type="text" id="txtName" size="35" class="form-control" placeholder="ชื่อ - นามสกุล" />
<span class="input-notification error png_bg" id="name-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;อีเมล :</label>
</td>
</tr>

<tr>
<td><input name="txtEmail" type="text" id="txtEmail" size="35" class="form-control" placeholder="อีเมล" />
<span class="input-notification error png_bg" id="email-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;ชื่อผู้ใช้เข้าสู่ระบบ :</label>
</td>
</tr>

<tr>
<td><input name="txtUsername" type="text" id="txtUsername" class="form-control" placeholder="ชื่อผู้ใช้เข้าสู่ระบบ"  size="35"/>
<span class="input-notification error png_bg" id="username-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;รหัสผ่าน :</label>
</td>
</tr>

<tr>
<td><input name="txtPassword" type="password" id="txtPassword" class="form-control" placeholder="รหัสผ่าน" size="35" />
<span class="input-notification error png_bg" id="password-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;ยืนยันรหัสผ่านอีกครั้ง :</label>
</td>
</tr>

<tr>
<td><input name="txtConPassword" type="password" id="txtConPassword" class="form-control" placeholder="ยืนยันรหัสผ่านอีกครั้ง" size="35" />
<span class="input-notification error png_bg" id="conpassword-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td>&nbsp;</td>
</tr>

<tr>
<td><span style="float:left"><input type="submit" name="submit" value="ลงทะเบียน" class="btn btn-default" /></span><span style="float:left"><div class="btn btn-default"><a href="index.php">ยกเลิกการสมัครสมาชิก</a></div></span></td>
</tr>
</table>
</form>
</div>



ไฟล์ check_form.php

Code (PHP)
<?php
	$objConnect = mysql_connect("localhost","root","1234") or die(mysql_error());
	$objDB = mysql_select_db("mook1");
	$strSQL = "SELECT * FROM member WHERE 1 AND username = '".$_POST["username-error"]."' OR email = '".$_POST["email-error"]."' ";
	$objQuery = mysql_query($strSQL) or die (mysql_error());
	$intNumField = mysql_num_fields($objQuery);
	$resultArray = array();
	while($obResult = mysql_fetch_array($objQuery))
	{
		$arrCol = array();
		for($i=0;$i<$intNumField;$i++)
		{
			$arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
		}
		array_push($resultArray,$arrCol);
	}
	
	mysql_close($objConnect);
	
	echo json_encode($resultArray);
?>


ไฟล์ save_member.php

Code (PHP)
<?php
$yea = date("Y")+543; 
//$hou = date("h")-1;
$username = $_POST['txtUsername'];
$password = $_POST['txtPassword'];
$name = $_POST['txtName'];
$email = $_POST['txtEmail'];
$m_date = date("d-m-$yea H:i:s");

$sqlcheck = "SELECT 
  `member`.member_id,
  `member`.member_name,
  `member`.username,
  `member`.password
FROM
  `member`
WHERE
  `member`.username = '$username'
  ";
//echo $sqlcheck;
$resultcheck = mysql_query($sqlcheck)or die(mysql_error().$sqlcheck);
$numuser = mysql_num_rows($resultcheck);
//echo $numuser;

if($numuser==0){
		
	$sql = "INSERT INTO member (
			member_name,
			email,
			member_date,
			username,
			password
			) VALUES (
			'$name',
			'$email',
			'$m_date',
			'$username',
			'$password'  )";
			
		if(mysql_query($sql)){
				
				
			$sql1 = "SELECT 
			  `member`.member_id,
			  `member`.member_name,
			  `member`.username,
			  `member`.password
			FROM
			  `member`
			WHERE
			  `member`.username = '$username' AND 
			  `member`.password = '$password' 
			  ";
			//echo $sql;
			$result = mysql_query($sql1)or die(mysql_error().$sql1);
			$num = mysql_num_rows($result);
			
				if($num>0)
				{
					
					$row=mysql_fetch_array($result);
					$_SESSION["member_id"]=$row['member_id'];
					$_SESSION["s_checkAdminLogin"]="AdminLoginOnly";
				}
					
				echo "ลงทะเบียนเรียบร้อยแล้ว";
				echo "<meta http-equiv='refresh' content='1;URL=profile_edit.php'>";
			}
}
else
	{
				echo "ลงทะเบียนผิดพลาด";
				echo "<meta http-equiv='refresh' content='1;URL=index.php'>";
	}
	
?>


รูปเเบบของฟอร์มลงทะเบียน ต้องการให้เเจ้งเตือนเป็นข้อความสีเเดงด้านล่างของเเต่ละฟิลล์

form regis



Tag : PHP, MySQL, Ajax









ประวัติการแก้ไข
2014-12-14 14:30:40
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-14 14:29:48 By : nb_kratai View : 5999 Reply : 5
 

 

No. 1



โพสกระทู้ ( 141 )
บทความ ( 0 )



สถานะออฟไลน์


ข้อที่ 1
if($("#txtUsername").val()=="")

อันนี้เช็คได้ แล้วทำไมอันอื่นจะเช็ตไม่ได้หละครับ Selector id เลยครับ

ข้อ 2
เกิดจาก username ซ้ำอะครับ
ลอง echo $username ก่อนก็ได้ครับ :)






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-14 17:08:23 By : dreamt256
 


 

No. 2



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


1.เอามารวมกันในฟังก์ชันเดียวเเล้วนะค่ะ ทดลองใช้งานเเล้วก็ไม่เช็คสักเงื่อนไขเลยค่ะ รบกวนอธิบายหน่อยนะค่ะ ไม่ค่อยเข้าใจเท่าไหร่ค่ะ

ไฟล์ register.php
Code (PHP)
  <script type="text/javascript">
$(document).ready(function(){
	$('#submit').click(function()
	{
	
	if($("#txtName").val()=="")
				{
					$("#name_error").html("*กรุณากรอกชื่อ-นามสกุล");
					return false;
				}
	if($("#txtEmail").val()!="")
				{
					
				if(($("#txtEmail").val().indexOf("@")==-1)||($("#txtEmail").val().indexOf(".")==-1))
					{
						$("#email_error").html("*รูปแบบ อีเมล ไม่ถูกต้อง");
						return false;
					}
				}
				else
				{
						$("#email_error").html("*กรุณากรอก อีเมล ");
						return false;
				}				
	if($("#txtUsername").val()=="")
				{
					$("#username-error").html("*กรุณากรอก ชื่อบัญชีผู้ใช้");
					return false;
				}
	if($("#txtPassword").val()=="")
				{
					$("#password-error").html("*กรุณากรอก รหัสผ่าน");
					return false;
				}
	if($("#txtConPassword").val()=="")
				{
					$("#conpassword-error").html("*กรุณากรอก ยืนยันรหัสผ่าน");
					return false;
				}			
	if($("#txtConPassword").val()!=$("#txtPassword").val())
				{
					$("#conpassword-error").html("*ยืนยัน รหัสผ่าน ไม่ตรงกัน");
					return false;
				}
				

	$("#txtUsername,#txtEmail").change(function(){

			$("#username-error").empty();
			$("#email-error").empty();

			$.ajax({ 
				url: "check_form.php" ,
				type: "POST",
				data: 'username-error=' +$("#txtUsername").val()+'&email-error='+$("#txtEmail").val()
			})
			.success(function(result) { 

					var obj = jQuery.parseJSON(result);

					if(obj != '')
					{
						  $.each(obj, function(key, inval) {

								   if($("#txtUsername").val() == inval["Username"])
								  {
									   $("#username-error").html("ชื่อผู้ใช้นี้มีอยู่แล้ว");
								  }

								   if($("#txtEmail").val() == inval["Email"])
								  {
									   $("#email-error").html("อีเมลนี้มีอยู่แล้ว");
								  }

						  });
					}

			});

		});
	});
	});
</script>

<div id="block_regis_new">
<form action="save_member.php" method="post" name="form1" id="form1">
<table width="300px">
<tr>
<td><label><h4>&nbsp;ลงทะเบียน</h4></label></td>
</tr>

<tr>
<td>&nbsp;</td>
</tr>

<tr>
<td><label>&nbsp;ชื่อ -นามสกุล :</label>
</td>
</tr>

<tr>
<td><input name="txtName" type="text" id="txtName" size="35" class="form-control" placeholder="ชื่อ - นามสกุล" />
<span class="input-notification error png_bg" id="name-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;อีเมล :</label>
</td>
</tr>

<tr>
<td><input name="txtEmail" type="text" id="txtEmail" size="35" class="form-control" placeholder="อีเมล" />
<span class="input-notification error png_bg" id="email-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;ชื่อผู้ใช้เข้าสู่ระบบ :</label>
</td>
</tr>

<tr>
<td><input name="txtUsername" type="text" id="txtUsername" class="form-control" placeholder="ชื่อผู้ใช้เข้าสู่ระบบ"  size="35"/>
<span class="input-notification error png_bg" id="username-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;รหัสผ่าน :</label>
</td>
</tr>

<tr>
<td><input name="txtPassword" type="password" id="txtPassword" class="form-control" placeholder="รหัสผ่าน" size="35" />
<span class="input-notification error png_bg" id="password-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td><label>&nbsp;ยืนยันรหัสผ่านอีกครั้ง :</label>
</td>
</tr>

<tr>
<td><input name="txtConPassword" type="password" id="txtConPassword" class="form-control" placeholder="ยืนยันรหัสผ่านอีกครั้ง" size="35" />
<span class="input-notification error png_bg" id="conpassword-error" style="color:#F00"></span>
</td>
</tr>

<tr>
<td>&nbsp;</td>
</tr>

<tr>
<td><span style="float:left"><input type="submit" name="submit" value="ลงทะเบียน" class="btn btn-default" /></span><span style="float:left"><div class="btn btn-default"><a href="index.php">ยกเลิกการสมัครสมาชิก</a></div></span></td>
</tr>
</table>
</form>
</div>




2.ไฟล์ save_member.php ถ้าเราเช็ค username ซ้ำ ในฟังก์ชันเเล้ว ในไฟล์ save_member.php นี้ต้องเช็คอีกป่าวค่ะ พอจะเเนะหน่อยได้ป่าวค่ะ ว่าต้องเขียนยังไง ไม่เข้าใจจริงๆค่ะ กลับไปดูโค๊ดเเล้วก็ยังเเก้ไม่ได้ค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-14 18:06:24 By : nb_kratai
 

 

No. 3



โพสกระทู้ ( 141 )
บทความ ( 0 )



สถานะออฟไลน์


#submit เป็นการเลือกจาก id อะครับ ลองเช็คดูดีๆครับ
และก็บางที่ก็ลองเช็คดูด้วยนะครับ ว่าใส่ id ตรงกันหรือเปล่านะครับ กับใน form
ถ้าอยากรู้ว่าสคริปเข้าเงื่อนไขหรือเปล่า ลองใช้
alert("test");
ลองดูครับ จะได้รู้ว่าเข้าเงื่อนไขไหนหรือเปล่า

Good luck

อ้อ ส่วนข้อ 2 นะครับ เช็ค 2 รอบก็ดีครับ เพราะเช็คจาก AJAX มันไม่ได้ป้องกันการซ้ำจริงๆครับ


ประวัติการแก้ไข
2014-12-15 09:42:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-15 09:39:57 By : dreamt256
 


 

No. 4



โพสกระทู้ ( 3,847 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

ใช้ plugin ง่ายกว่าไม๊
jqueryvalidation
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-15 10:13:09 By : mangkunzo
 


 

No. 5



โพสกระทู้ ( 484 )
บทความ ( 3 )



สถานะออฟไลน์


เอาแบบง่าย
html5 มี form validat
ตัวอย่าง

<input type="text" pattern=".{6,}" title="6 ตัวอักษรเป็นอย่างต่ำ" required>

หรือ e-mail ก็ใช้ pattern regular

Code
<input type="text" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" title="กรอกรูปแบบ e-mail ให้ถูกต้อง" required>


หรือง่ายก็นั้น ก็ jQuery validate อันนี้ก็ง่ายมักมาก ศึกษา API ดู

ตรวจสอบข้อมูลซ้ำ

Code
$.get( "checking.php", { ฟิลด์ทีส่งไป: "ค่าที่ส่งไป" }, function( data ) { if (data > 0) { //statement } else { //statement } });


ฝั่ง checking.php ก็รับค่า $_GET["ฟิลด์ที่ส่งมา"]
เอาไป Query
อาจจะ Count หรือ num_row
สั่ง echo $count หรือ $num_row
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-15 18:08:38 By : fossil31
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เช็คค่า username เเละ email ซ้ำเเบบ ajax เเละต้องการเช็คค่าว่างของฟิลอื่นๆ เขียนฟังชันรวมกันได้ป่าวค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่