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

Registered : 107,996

HOME > PHP > PHP Forum > สอบถามเกี่ยวกับการเช็คค่าซ้ำในฐานข้อมูล MySQL กรณีการเปลี่ยนแปลงข้อมูล



 

สอบถามเกี่ยวกับการเช็คค่าซ้ำในฐานข้อมูล MySQL กรณีการเปลี่ยนแปลงข้อมูล

 



Topic : 121690



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



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



จาก Code ผมได้ทำการ action มาจากอีกไฟล์นึง
ในการแก้ไข Profile โดยมีการกำหนดข้อมูลห้ามซ้ำ
แต่ Code ที่ผมเขียนขึ้นมานั้น มันเช็คค่าซ้ำที่ ID ของตัวเองด้วย
เช่นจะแก้ไข เฉพาะรหัสผ่าน ก็แก้ไม่ได้ เพราะ เบอร์โทรศัพท์ เลขบัตร มีอยู่แล้ว ซึ่งก็เป็นของตัวมันเอง
พอจะมีวิธีอื่นไหมครับ

Code (PHP)
<?php
	session_start();
	include("connect.php");
	$strSQL = "SELECT * FROM member WHERE PerId = '".trim($_POST['txtPerId'])."' ";
	$objQuery = mysql_query($strSQL);
	$objResult = mysql_fetch_array($objQuery);
	if($objResult)
	{	
			?>
			<script type="text/javascript">
				alert("เลขบัตรประจำตัวประชาชน ไม่สามารถใช้งานได้");
				history.back();
			</script>
			<?php
			 
	}
	
	elseif($objResult)
	{
		$strSQL = "SELECT * FROM member WHERE DriveId = '".trim($_POST['txtDriveId'])."' ";
	$objQuery = mysql_query($strSQL);
	$objResult = mysql_fetch_array($objQuery);
			?>
			<script type="text/javascript">
				alert("เลขใบขับขี่ ไม่สามารถใช้งานได้");
				history.back();
			</script>
			<?php
			 
	}
	
	elseif($objResult)
	{
		$strSQL = "SELECT * FROM member WHERE Tel = '".trim($_POST['txtTel'])."' ";
	$objQuery = mysql_query($strSQL);
	$objResult = mysql_fetch_array($objQuery);
			?>
			<script type="text/javascript">
				alert("หมายเลขติดต่อ ไม่สามารถใช้งานได้");
				history.back();
			</script>
			<?php	
			 
	}
	
	elseif($objResult)
	{
		$strSQL = "SELECT * FROM member WHERE Email = '".trim($_POST['txtEmail'])."' ";
	$objQuery = mysql_query($strSQL);
	$objResult = mysql_fetch_array($objQuery);
			?>
			<script type="text/javascript">
				alert("อีเมลล์ ไม่สามารถใช้งานได้");
				history.back();
			</script>
			<?php	
			 
	}
	
	else
	{
		$strSQL = "UPDATE member SET
				ID='".($_POST['txtID'])."',Status='".($_POST['txtStatus'])."',Fname='".($_POST['txtFname'])."',
				Lname='".($_POST['txtLname'])."',PerId='".($_POST['txtPerId'])."',DriveId='".($_POST['txtDriveId'])."',
				Tel='".($_POST['txtTel'])."',Email='".($_POST['txtEmail'])."',Password='".($_POST['txtPassword'])."',
				SID='".($_POST['txtSID'])."',Active='".($_POST['txtActive'])."'
				WHERE ID ='".$_POST['txtID']."'";
	$objQuery = mysql_query($strSQL) or die("Error : ".$strSQL);
	
	if ($strSQL)
	{
		echo("<script>
				alert('แก้ไขข้อมูลเรียบร้อยแล้ว');
				history.go(-2);
			 </script>");
	}
	}
	
		
	mysql_close();

?>




Tag : PHP, MySQL, HTML/CSS







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-03-01 15:31:41 By : Pla2todkrob View : 601 Reply : 4
 

 

No. 1



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



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


ผมอ่านแล้วเหมือนผมไม่เข้าใจคำถามหรือเปล่าไม่ทราบ แต่ถ้าถามผมว่าผมทำแบบไหนผมก็ใช้การดึงข้อมูลทั้งหมดมาแสดง
ใน text field จากนั้นข้อมูลที่ไม่ต้องการให้แก้ไขก็เติม readonly ลงไปตาม text field ที่ต้องการก็ไม่สามารถแก้ไขได้ครับ
***ระบบที่ผมทำไม่ได้ Online เป็นระบบเล็กๆเลยทำง่ายๆไว้
Code (PHP)
<input name="teacher_save" type="text" id="<?php echo $teacher_save["Name"];?>" value="<?php echo $teacher_save["Name"];?>" size="14" readonly />







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-01 17:54:35 By : apisit542
 


 

No. 2

Guest


Code (PHP)
//ถ้า อีเมล์ที่ส่งมาไม่ใช่เมลล์เดิม ค่อยไปตรวจสอบเมลล์ซ้ำ
if($objResult[0]['email']  !== $_POST['txtEmail']){
//ตรวจสอบเมลล์ซ้ำ
...
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-01 22:17:06 By : [email protected]
 

 

No. 3



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



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

ตอบความคิดเห็นที่ : 1 เขียนโดย : apisit542 เมื่อวันที่ 2016-03-01 17:54:35
รายละเอียดของการตอบ ::
มันจะอารมประมาณว่า
ฐานข้อมูลเดิม
ID = 0001
Name = Frist Name
ID Card = 1111111111111
Phone = 0812345678
Username = test1
Password = test1

หน้าที่จะแก้ไขโปรแกรม
เช็ค ID Card,Phone,Username ห้ามซ้ำ
สมมติ กดปุ่ม Edit จะดึงข้อมูลทั้งหมดนี้ขึ้นมา
เป็น <input type="text" value="ฐานข้อมูล">
แต่ผมต้องการเปลี่ยน แค่บาง ฟิล เช่น
ID = 0001
Name = Fristname Lastname เดิมทีเป็น Frist Name
ID Card = 1111111111111
Phone = 0812345678
Username = test1
Password = test1

พอกดบันทึก
มันจะแจ้งว่า
ID Card ซ้ำ
Phone ซ้ำ
Username ซ้ำ

และสิ่งที่ผมต้องการคือ ให้มันบันทึกได้ไม่ต้องแจ้งว่า ข้อมูลพวกนี้ซ้ำ
เพราะข้อมูลพวกนี้เป็นของตัวมันเอง ไม่ได้ซ้ำกับฟิลอื่น

ที่ผมให้มันเช็คค่าซ้ำเพราะไม่ต้องการให้ซ้ำกับฟิลอื่น แต่นี้มันฟิลของตัวเอง



ประวัติการแก้ไข
2016-03-02 12:16:04
2016-03-02 13:47:40
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-02 12:15:43 By : Pla2todkrob
 


 

No. 4



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : Pla2todkrob เมื่อวันที่ 2016-03-02 12:15:43
รายละเอียดของการตอบ ::
ถ้าดึงมาแก้ไขพอแก้ไขเสร็จก็ต้อง Update ลงฐานใช่ไหมละครับ
ตอนแสดงข้อมูลคุณ echo ออกมาแสดง แต่แก้ไขแค่บางส่วน
เพราะฉะนั้นแล้วตรง Update ก็ Update ฉะเพาะส่วนที่แก้ไข
ไม่ต้องนำตัวแปร ที่โชว์ไป Update ด้วย
Code (PHP)
$strSQL = "UPDATE customer SET Name = '".$_POST["txtName"]."'
,Username = '".$_POST["txtUsername"]."' WHERE ID = '$ID' ";
$objQuery = mysql_query($strSQL);


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-02 15:41:46 By : apisit542
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเกี่ยวกับการเช็คค่าซ้ำในฐานข้อมูล MySQL กรณีการเปลี่ยนแปลงข้อมูล
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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