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,038

HOME > PHP > PHP Forum > รบกวนช่วยทีครับเกี่ยวกับการ check user ในการ regis ดู code ผมข้างใน



 

รบกวนช่วยทีครับเกี่ยวกับการ check user ในการ regis ดู code ผมข้างใน

 



Topic : 041982



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



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




ผมจะทำการพักข้อมูลเมื่อเจอ user ที่ซ้ำกับในฐานข้อมูลเพื่อให้เค้าแก้ไขก่อนแล้วทำงานต่อต้องทำยังไงครับ ?

$sql1 = "SELECT * FROM member WHERE username = '".$_POST["username"]."' ";
$objQuery = mysql_query($sql1);
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
echo "CustomerID already exist.";
}else{
}

ก็คือเมื่อเจอ user ที่่ซ้ำแล้ว ผมต้องใช้คำสั่งยังไงครับ ?

ให้้โปรแกรมพักการทำงานเพื่อให้แก้ไข user ซะก่อนแล้วจึงจะ check อย่างอื่นต่อ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-04-26 10:08:22 By : Alucardzar View : 1156 Reply : 13
 

 

No. 1



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



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


ลองใช้ Ajax ดูสิครับ






Date : 2010-04-26 10:20:14 By : naskw
 


 

No. 2



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



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


ผมพึ่งหัดเขียนอ่ะครับ (มือใหม่)

ไม่ค่อยรู้เรื่องอ่ะครับ - -"
Date : 2010-04-26 10:21:28 By : Alucardzar
 

 

No. 3



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



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


จากคำถาม พักข้อมูลนี่น่าจะหมายถึงทำให้ข้อมูลที่เค้ากรอกไปยังคงอยู่ใช่ปะครับ
งั้นลองแบบนี้ ตรง value ใส่เป็ฯดังนี้ value="<?=$_POST['ชื่อฟิลด์'];?>"

แต่ขอดูโค๊ดหน้านี้หน่อยก็ดี
Date : 2010-04-26 10:40:53 By : naskw
 


 

No. 4



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



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

คือเมื่อเจอ user ซ้ำกันแล้วเนี่ย ต้องมี popup แสดงบอกว่า user ซ้ำกัน แล้ว ค่อยกลับไปแก้ไขข้อมูล ประมาณนี่เหรอครับ
Date : 2010-04-26 10:42:48 By : chonburi f.c
 


 

No. 5



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



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


Code น่ะครับ

<?php
function isValidEmail($email){
return eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email) ;
}
$con = mysql_connect('127.0.0.1', 'root', '');
if (!$con) {
die('Could not connect: ' . mysql_error());
}else{
//echo 'Connected successfully';
mysql_select_db("zpj", $con);
}
$email = $_POST['email'];
$sql1 = "SELECT * FROM member WHERE username = '".$_POST["username"]."' ";
$objQuery = mysql_query($sql1);
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
echo "CustomerID already exist.";
}else{
}
$sql2 = "SELECT * FROM member WHERE email = '".$_POST["email"]."' ";
$emailQuery = mysql_query($sql2);
$emailResult = mysql_fetch_array($emailQuery);
if($emailResult)
{
echo "E-Mail already exist.";
}else{
}
if($_POST['btnAdd'] != ""){
if ($_POST['username'] != null && $_POST['password'] != null && $_POST['email'] != null){
if(isValidEmail($email)){
$sql = "INSERT INTO member(username, password, email) VALUES('".$_POST['username']."', '".$_POST['password']."','".$_POST['email']."')";
//echo $sql;
mysql_query($sql,$con);
header('Location:complete.php');
}else{
echo "Wrong E-mail ,Please try again."."<HR>";
}
}else{
echo "Please Enter username or password or email"."<HR>";
}
}
?>
<!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>
<script language="javascript">
function CheckNum(){
if (event.keyCode < 48 || event.keyCode > 57){
event.returnValue = false;
}
}
</script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body bgcolor="#DEB887">
<form name="test" action="insert_data.php" method="POST" onSubmit="return formCheck();">
Username :
<input type="text" name="username" maxlength="100" value="<?php echo $_POST['username']?>" /><BR>
Password :
<input type="password" name="password" maxlength="100" value="<?php echo $_POST['password']?>" /><BR>
E-mail :
<input type="text" name="email" value="<?php echo $_POST['email']?>" /><BR>
<input type="submit" value="Add" name="btnAdd"/>
</form>
</body>
</html>



ไม่ว่าจะใส่ข้อมูล username และ email ซ้ำ , username ซ้ำ email ไม่ซ้ำ , username ไม่ซ้ำ email ซ้ำ มันก็จะเกิด error เตือนตามที่สั่งไว้ก็จริง
แต่มันก็ไปเพิ่มในฐานข้อมูลด้วย [มีขึ้นเตือนแต่ก็มี error เรื่อง header ด้วย]

error ที่ขึ้น

CustomerID already exist.E-Mail already exist.
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:18) in D:\xampp\htdocs\zpj\insert_data.php on line 35
Date : 2010-04-26 11:02:44 By : Alucardzar
 


 

No. 6



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



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


Code (PHP)
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:18) in D:\xampp\htdocs\zpj\insert_data.php on line 35

Error นี้ให้คุณลองไปตรวจสอบในไฟล์คอนฟิกของ PHP ที่ไฟล์ php.ini ดูว่า output_buffering เป็น On หรือเปล่าถ้าไม่ใช้ให้เปลี่ยนเป็น On ซะ
Date : 2010-04-26 11:29:41 By : naskw
 


 

No. 7



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



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


เปลี่ยนแล้วก็ยังขึ้น error เหมือนเดิมครับ

แล้วต้องเพิ่ม code หลังจาก echo "เตือนข้อมูลซ้ำ";

ว่าอะไรอะครับ ถึงจะหยุดการทำงานไม่ให้มันไปส่งค่าต่อเพื่อไปเพิ่มใน DB

เพราะใน DB มันเพิ่มอ่ะครับแม้ว่าจะเตือนแล้วแต่ไม่ได้สั่งให้หยุดทำงาน

รบกวนด้วยนะครับ - -"
Date : 2010-04-26 11:49:57 By : Alucardzar
 


 

No. 8



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



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


ขอแนะนำอีกอย่างนะครับว่า หน้าที่ยูสเซอร์คีย์ข้อมูลกะหน้า insert ถ้าอยู่หน้าเดียวกันจะทำง่ายกว่าผมว่านะ ไม่ต้องส่งขอ้มูลไปมาหลายหน้า ลองเอาโค้ดนี้ไปศึกษาดูน่าพอจะเป็นแนวทางได้
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>
<script language="javascript">
function CheckNum(){
if (event.keyCode < 48 || event.keyCode > 57){
event.returnValue = false;
}
}
</script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body bgcolor="#DEB887">
<?php
	if(isset($_POST['btnAdd'])){
				function isValidEmail($email){
					return eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email) ;
				}
				$con = mysql_connect('127.0.0.1', 'root', '');
				if (!$con) {
					die('Could not connect: ' . mysql_error());
				}else{
				//echo 'Connected successfully';
					mysql_select_db("zpj", $con);
				}
				
				$email = $_POST['email'];
				$sql1 = "SELECT * FROM member WHERE username = '".$_POST["username"]."' ";
				$objQuery = mysql_query($sql1);
				$checkID = mysql_num_rows($objQuery);//ดึงจำนวน row ที่ได้จากคิวรี
				if($checkID > 0){//ถ้ามี row แสดงว่าซ้ำ แสดง error
					echo "CustomerID already exist.";
				}
				
				$sql2 = "SELECT * FROM member WHERE email = '".$_POST["email"]."' ";
				$emailQuery = mysql_query($sql2);
				$checkEmail = mysql_num_rows($emailQuery);//ดึงจำนวน row ที่ได้จากคิวรี
				if($checkEmail > 0){//ถ้ามี row แสดงว่าซ้ำ แสดง error
					echo "E-Mail already exist.";
				}
				
				if($checkID < 0 & $checkEmail <0){ // ถ้าไอดี กับ อีเมล์ไม่ซ้ำถึงจะเพิ่มข้อมูล
					//โค้ดเพิ่มข้อมูลใส่ตรงนี้นะ
				}
				
	}
?>
<form name="test" action="<?=$_SERVER['PHP_SELF'];?>" method="POST" onSubmit="return formCheck();">
Username : 
<input type="text" name="username" maxlength="100" value="<?php echo $_POST['username']?>" /><BR>
Password : 
<input type="password" name="password" maxlength="100" value="<?php echo $_POST['password']?>" /><BR>
E-mail :
<input type="text" name="email" value="<?php echo $_POST['email']?>" /><BR>
<input type="submit" value="Add" name="btnAdd"/>
</form>
</body>
</html>

ไปกินข้าวก่อนนะ เด๋วมาใหม่
Date : 2010-04-26 12:02:16 By : naskw
 


 

No. 9



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



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


code ผมก็อยู่หน้าเดียวกันนะครับ
Date : 2010-04-26 12:21:02 By : Alucardzar
 


 

No. 10



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



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


Quote:
เปลี่ยนแล้วก็ยังขึ้น error เหมือนเดิมครับ
แล้วต้องเพิ่ม code หลังจาก echo "เตือนข้อมูลซ้ำ";
ว่าอะไรอะครับ ถึงจะหยุดการทำงานไม่ให้มันไปส่งค่าต่อเพื่อไปเพิ่มใน DB
เพราะใน DB มันเพิ่มอ่ะครับแม้ว่าจะเตือนแล้วแต่ไม่ได้สั่งให้หยุดทำงาน
รบกวนด้วยนะครับ - -"

คำสั่งที่หยุดสคริบ คือ exit()
แต่ว่าผมว่าจะใส่หลังจากที่มัน insert ข้อมูลเรียบร้อยแล้วเท่านั้น ถ้าเอาไปใส่ในส่วน echo จะทำให้สคริบหยุดการทำงานทั้งหมด ลองดูนะ
Date : 2010-04-26 13:04:34 By : naskw
 


 

No. 11



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



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


ผมพยายามหลายแนวแล้วนะครับ

สรุปผลที่เป็นตอนนี้ก็คือว่า

ใน DB มีข้อมูลดังนี้
username = 123 , password = 123 , email = [email protected]

เมื่อเราทำการ Regis เข้าไป


1.หากใส่ข้อมูลดังนี้
username = 123 , password = 123 , email = [email protected]
มันจะขึ้นบอกว่า username , email ซ้ำ แล้วก็มี error ขึ้นดังนี้
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:19) in D:\xampp\htdocs\zpj\insert_data.php on line 39
*มันเพิ่มข้อมูลใน DB เองเลย


2.หากใส่ข้อมูลดังนี้
username = 12345 , password = 123 , email = [email protected]
มันจะขึ้นบอกว่า username สามารถใช้ได้ email ซ้ำ แล้วก็มี error ขึ้นดังนี้
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:19) in D:\xampp\htdocs\zpj\insert_data.php on line 39
*มันเพิ่มข้อมูลใน DB เองเลย


3.หากใส่ข้อมูลดังนี้ ีusername = ซ้ำหรือไม่ก็ตาม , password = 123 , email = ลักษณะของ email ผิด [[email protected]] หลัง@ไม่มีอักษรจะขึ้นว่า
username สามารถใช้ได้หรือไม่ได้ตามที่ใส่ไป แล้วเตือนว่า wrong email
กรณีนี้จะไม่ขึ้น error และจะไม่เพิ่มข้อมูลเข้าไปใน DB ด้วย


ไม่ทราบว่าจะแก้ยังไงดีอ่ะครับ ?
Date : 2010-04-26 15:22:43 By : Alucardzar
 


 

No. 12



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



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


Quote:
Error นี้ให้คุณลองไปตรวจสอบในไฟล์คอนฟิกของ PHP ที่ไฟล์ php.ini ดูว่า output_buffering เป็น On หรือเปล่าถ้าไม่ใช้ให้เปลี่ยนเป็น On ซะ

ตรงนี้ต้อง restart web server ด้วยนะโทษทีบอกไม่หมด
Quote:
ผมพยายามหลายแนวแล้วนะครับ

สรุปผลที่เป็นตอนนี้ก็คือว่า

ใน DB มีข้อมูลดังนี้
username = 123 , password = 123 , email = [email protected]

เมื่อเราทำการ Regis เข้าไป


1.หากใส่ข้อมูลดังนี้
username = 123 , password = 123 , email = [email protected]
มันจะขึ้นบอกว่า username , email ซ้ำ แล้วก็มี error ขึ้นดังนี้
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:19) in D:\xampp\htdocs\zpj\insert_data.php on line 39
*มันเพิ่มข้อมูลใน DB เองเลย


2.หากใส่ข้อมูลดังนี้
username = 12345 , password = 123 , email = [email protected]
มันจะขึ้นบอกว่า username สามารถใช้ได้ email ซ้ำ แล้วก็มี error ขึ้นดังนี้
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\zpj\insert_data.php:19) in D:\xampp\htdocs\zpj\insert_data.php on line 39
*มันเพิ่มข้อมูลใน DB เองเลย


3.หากใส่ข้อมูลดังนี้ ีusername = ซ้ำหรือไม่ก็ตาม , password = 123 , email = ลักษณะของ email ผิด [[email protected]] หลัง@ไม่มีอักษรจะขึ้นว่า
username สามารถใช้ได้หรือไม่ได้ตามที่ใส่ไป แล้วเตือนว่า wrong email
กรณีนี้จะไม่ขึ้น error และจะไม่เพิ่มข้อมูลเข้าไปใน DB ด้วย

ไม่ทราบว่าจะแก้ยังไงดีอ่ะครับ ?


ขอดูโด้ดนะตอนนี้
Date : 2010-04-26 15:45:40 By : naskw
 


 

No. 13



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



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


ผมแก้ใหม่หมดจนผ่านแล้วครับ

ขอบคุณมากครับ :D
Date : 2010-04-27 09:32:41 By : Alucardzar
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนช่วยทีครับเกี่ยวกับการ check user ในการ regis ดู code ผมข้างใน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่