การซ่อนไอดีของเรคอร์ดที่กำลังแสดงผล
แต่ทีนี้ถ้าคนเปลี่ยน ID ก็จะเห็นข้อมูลของคนอื่นๆได้ ดังนั้นเราไม่อยากเปิดเผย id จริงบน url หรือแม้กระทั่งใน input hidden อยากเข้ารหัสไว้ แต่พอเจอเคสที่ Primary key หลายๆตัว เวลาจะแสดผล โดยส่งคีย์ผ่าน url ที่เข้ารหัสแล้ว 3 ตัว มันยาวเฟื้อเลยครับท่าน!!
ก็เลยคิดว่าจับมารวมกันแล้ว md5() ซะเลย แต่ md5() อย่างเดียวยังไม่ตอบโจทย์ ก็เลยคิดว่าเข้ารหัสด้วยฟังก์ชั่นที่ใช้ประจำอีกที แล้วส่งไปตามปกติ
localhost/project?key=asd45632sd0043dsuitexxvnkoiyf
แล้วหน้าแสดงผลก็ถอดรหัส 1 ครั้ง
ก็จะได้ md5 ชุดแรกมาใช้ใน where
ก็จะต้อง CONCAT() มัดฟิลด์รวมกันและ MD5() ใน WHERE อีกที
ก็จะได้โค้ดแสดงข้อมูลตามไอดีที่ส่งมาดังนี้
SELECT *
FROM my_table
WHERE MD5(CONCAT(fieldA, fieldB, fieldC)) = '$key_ md5'
ก็เลยคิดว่าจับมารวมกันแล้ว md5() ซะเลย แต่ md5() อย่างเดียวยังไม่ตอบโจทย์ ก็เลยคิดว่าเข้ารหัสด้วยฟังก์ชั่นที่ใช้ประจำอีกที แล้วส่งไปตามปกติ
localhost/project?key=asd45632sd0043dsuitexxvnkoiyf
แล้วหน้าแสดงผลก็ถอดรหัส 1 ครั้ง
ก็จะได้ md5 ชุดแรกมาใช้ใน where
ก็จะต้อง CONCAT() มัดฟิลด์รวมกันและ MD5() ใน WHERE อีกที
ก็จะได้โค้ดแสดงข้อมูลตามไอดีที่ส่งมาดังนี้
SELECT *
FROM my_table
WHERE MD5(CONCAT(fieldA, fieldB, fieldC)) = '$key_ md5'
ความคิดเห็น
แสดงความคิดเห็น