A-AA+then

เช็ค java script

1,754
เรามีวิธีเช็ค การเปิด-ปิดทำงานของ java script ว่าเปิดทำงานไม
พยายามหาแล้ว แต่ไม่เจอ

2 ความคิดเห็น

เราจำเป็นต้องใช้ java script เช็คการกรอกข้อมูล
1

การตรวจเช็คตรงๆไม่มีครับ ทำได้แค่การตรวจแบบอ้อมๆ

ต้องทำความเข้าใจก่อนว่า Javascript และ PHP ทำงานกันคนละที และ คนละที่ ดังนั้นเราไม่สามารถตรวจสอบได้ว่า Browser จะเปิดการใช้งาน Javascript หรือไม่ ที่ PHP ได้ (แนวคิดง่ายๆ คือ PHP ไม่สามารถรับรู้อะไรเลยว่า Browser มีคุณสมบัติอะไรบ้าง) นอกจากเราจะส่งค่าว่ามันทำงานได้ มาให้

ผมยกตัวอย่างที่หลายคนอาจจะแย้ง ว่า PHP สามารถรู้ได้ว่า User ใช้ Browser อะไรอยู่ ซึ่งอันที่จริง เหตุผลที่ PHP รู้ก็เพราะว่า Browser ส่งค่า (header) มาด้วยตอนเรียกไปยัง PHP นั่นเอง (Cookie ก็ด้วยเหตุผลเดียวกัน)

จากการที่เรารู้ว่า PHP จะไม่รู้ถ้าไม่ส่งไป ก็อาจทำให้เราสามารถตรวจแบบอ้อมๆได้ หาก Browser จะส่งค่าไป ซึ่งเทคนิคก็ไม่ได้ซับซ้อนอะไรครับ แต่มันจะทำงานได้แค่ระดับหนึ่งเท่านั้น

ยกตัวอย่างแนวคิดง่ายๆ คือการใช้ link ในการส่งค่า เช่น

<a href="index.php" onclick="this.href='index.php?script=yes'">Test</a>

ในกรณีปกติ เมื่อเราคลิกลิงค์ URL ที่เรียกก็จะเป็น index.php ซึ่งถ้า Javascript ทำงาน URL ที่เรียก จะถูกกำหนดเป็น index.php?script=yes ซึ่งได้จาก event onclick แทน

คำแนะนำที่ดีกว่า

ในทางปฏิบัติ ผมไม่แนะนำให้ใช้วิธีตรวจสอบ Javascript นะครับ เพราะหลักในการออกแบบเว็บที่ดี เราควรออกแบบเว็บโดยคำนึงถึงว่าให้บุคคลทีปิดการใช้งาน Javascript สามารถเข้าถึงเว็บได้ด้วย ตัวอย่างที่อยากให้ลองศึกษาดู ก็คือ phpMyAdmin ครับ ลองปิดการใช้งาน Javascript และ เรียกใช้ phpMyAdmin ดู จะเห็นว่า มันก็ยังคงใช้งานได้ครับ

จริงๆแล้วเราไม่ควรให้ Javascript เป็นข้อจำกัดในการใช้งานเว็บของเรา เพราะมันเป็นเพียงเครื่องอำนวยความสะดวกให้เราเท่านั้นครับ
2
^