ตัดข้อความข้างหน้าทิ้งแล้วอัพเดทฐานข้อมูลใหม่.

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ตัดข้อความข้างหน้าทิ้งแล้วอัพเดทฐานข้อมูลใหม่.

ตัดข้อความข้างหน้าทิ้งแล้วอัพเดทฐานข้อมูลใหม่.

ตัดข้อความ3อักขระข้างหน้าทิ้งแล้วอัพเดทฐานข้อมูลใหม่ยังไงครับ.

ขอสอบถาม php mysql เกียวกับการตัดคำนำหน้าชื่อทิ้งใน ฟิลด์name และอัพเดทรายชื่อใน ฟิลด์name ให้เหลือเฉพาะชื่อเท่านั้น
คำนำหน้าชื่อมีแค่ 3 ตัวอักขระซึ่งได้แก่ นาย หรือ นาง อยากให้เหลือเฉพาะชื่อเท่านั้น.


ฟิลด์name

นายxxxxxxxxx
นางyyyyyyyy
นางaaaaaaaaaa
นางccccccccc
นางggggggggg
นายuuuuuuu
นายzzzzzzzzzzz


Giggstar 223.205.247.xxx 09-10-2019 14:36:19

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
แนวทาง PHP เบื้องต้น

$name_arr = array(
    "นายxxxxxxxxx นายก",
    "นางyyyyyนางงกyyy"
);
// วนลูปแทนคำว่า นาย หรือนาง ที่อยู่ด้านหน้า ของแต่ละชื่อด้วย ค่าว่าง
foreach($name_arr as $name){
    $new_name = preg_replace("@(^นาย)|(^นาง)@",'',$name);
    echo $new_name;
}
 
หรือ ถ้าจะอัพเดทลง DB เลยควรทดสอบโดยสร้างฟิลด์ เช่น name1
แล้วใช้คำสั่ง PHP ร่วมกับ mysql ทำการอัพเดทข้อมูลในรูปแบบ
 
.....
while($row = $result->fetch_assoc(){		

		$mysqli->query("
		UPDATE table SET
		name1 = '".preg_replace("@(^นาย)|(^นาง)@",'',$row['name);."'
		");

}
......
 
หากตรวจสอบเบื้องต้นข้อมูลถูกต้อง ก็เปลี่ยนจาก name1 เป็น name 
ควร backup ข้อมูลเพื่อป้องการความผิดพลาด
 


บทความแนะนำที่เกี่ยวข้อง
อักขระคั่น (Delimiters) ในการใช้งาน Regular Expressions ของ PHPอ่าน 17,210
การใช้งาน Meta characters ใน Regular Expressions ของ PHPอ่าน 13,876
การใช้งาน character classes ใน Regular Expressions ของ PHPอ่าน 22,009
ninenik 124.120.117.xxx 09-10-2019
 ความคิดเห็นที่ 2
ขอบคุณครับ.


giggstar 223.205.247.xxx 10-10-2019 10:56






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ