ข้อความที่เพี้ยนซ้อนสองชั้นหน้าตาเป็นอย่างไร
ก่อนแก้
à ¸£à ¹‰à ¸²à ¸™à ¸Âà ¸²à ¸«à ¸²à ¸£à ¹„à ¸—à ¸¢ à ¸£à ¸²à ¸„à ¸²à ¸¢à ¹ˆà ¸Âà ¸¡à ¹€à ¸¢à ¸² à ¸‚à ¸Âà ¸šà ¸„à ¸¸à ¸“à ¸„à ¸£à ¸±à ¸š
หลังแก้
ร้านอาหารไทย ราคาย่อมเยา ขอบคุณครับ
เกิดขึ้นได้อย่างไร
ใน UTF-8 ตัวอักษรไทย 1 ตัวใช้ 3 ไบต์ เมื่อโปรแกรมอ่านไบต์เหล่านั้นด้วย Windows-1252 (Latin-1) จะได้อักขระแปลกๆ 3 ตัว เช่น ส กลายเป็น ส ถ้าโปรแกรมบันทึกผลลัพธ์นั้นเป็น UTF-8 อีกครั้ง แล้วมีการอ่านผิดซ้ำอีกรอบ แต่ละตัวก็ถูกแตกออกอีกชั้น จึงยาวขึ้นเรื่อยๆ
สาเหตุที่มักทำให้เกิดรอบที่สอง:
- ย้ายฐานข้อมูลที่ ข้อมูลจาก WordPress หรือ SQL เพี้ยนมาตั้งแต่ต้นอยู่แล้ว
- เปิดไฟล์ CSV ใน Excel บันทึก แล้วนำเข้าอีกครั้งด้วยการเข้ารหัสที่ผิด
- สคริปต์หรือ API แปลงข้อความที่เป็น UTF-8 อยู่แล้วซ้ำอีกรอบ
รูปแบบที่พบบ่อยในพริบตา
เพี้ยนซ้อนสองชั้น
à ¸‚ à ¸„ à ¸‡ à ¸ˆ à ¸ª à ¸« à ¸ à ¸²à ¸©à ¸² à ¸‚à ¸Âà ¸šà ¸„à ¸¸à ¸“ à ¹€à ¸¡à ¸™à ¸¹
ถูกต้อง
ข ค ง จ ส ห ภาษา ขอบคุณ เมนู
ถ้าซ้อนสามชั้นจะยาวกว่านี้อีก Mojibuster แก้ระดับนั้นให้อัตโนมัติเช่นกัน
ทำไมค้นหาแล้วแทนที่ไม่พอ
ถ้าใช้ค้นหาแล้วแทนที่ คุณต้องรู้ทุกรูปแบบ ทั้งแต่ละชั้นและแต่ละตัวอักษร พลาดง่ายหรืออาจไปแทนที่ข้อความที่ถูกอยู่แล้ว Mojibuster คำนวณไบต์ต้นฉบับกลับมา แล้วตรวจว่าผลเป็น UTF-8 ที่ถูกต้องจริงหรือไม่ จึงแทนที่เฉพาะจุดนั้น
- วางข้อความข้างบนหรือลากไฟล์ใส่กล่อง
- Mojibuster ตรวจว่าข้อความถูกแปลงผิดกี่ชั้น และแก้ได้สูงสุดสามชั้น
- ใต้หัวข้อ อะไรเปลี่ยนไปบ้าง จะเห็นทุกจุด จากนั้นคัดลอกผลลัพธ์หรือดาวน์โหลดไฟล์
ข้อความที่ถูกอยู่แล้วจะไม่ถูกแตะ แม้ในไฟล์เดียวกันจะมีบรรทัดเสียและบรรทัดดีปนกัน ส่วนกรณีชั้นเดียวดูที่ ภาษาต่างดาวคืออะไร
คำถามที่พบบ่อย
รู้ได้อย่างไรว่าเป็นการเข้ารหัสซ้อนสองชั้น
ดูจากความยาวและตัวอักษรที่ซ้ำรูปแบบ เช่น à ¸ และ à ¹ ชั้นเดียวจะสั้นกว่ามาก เช่น สม (อ่านเพิ่มที่ ภาษาต่างดาวคืออะไร)
Mojibuster แก้ได้กี่ชั้น
สูงสุดสามชั้น มากกว่านั้นแทบไม่พบในทางปฏิบัติ
ถ้าเพี้ยนแค่บางส่วนของข้อความล่ะ
ไม่มีปัญหา Mojibuster แก้ทีละจุดและไม่แตะส่วนที่ถูกอยู่แล้ว
ดูผลก่อนใช้งานจริงได้ไหม
ได้ ใต้หัวข้อ อะไรเปลี่ยนไปบ้าง จะแสดงทุกจุดที่แก้พร้อมเลขบรรทัด ก่อนคัดลอกหรือดาวน์โหลด