GORAGOD.com
freelance, web developer, web designer, hosting, domain name
Home
Host & Domain
Portfolio
เช็ค java script
Home
Forum
เช็ค java script
E_tabra
เรามีวิธีเช็ค การเปิด-ปิดทำงานของ java script ว่าเปิดทำงานไม
พยายามหาแล้ว แต่ไม่เจอ
E_tabra
เราจำเป็นต้องใช้ java script เช็คการกรอกข้อมูล
goragod
การตรวจเช็คตรงๆไม่มีครับ ทำได้แค่การตรวจแบบอ้อมๆ
ต้องทำความเข้าใจก่อนว่า 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 เป็นข้อจำกัดในการใช้งานเว็บของเรา เพราะมันเป็นเพียงเครื่องอำนวยความสะดวกให้เราเท่านั้นครับ
ความคิดเห็น
รายละเอียด
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^
ต้องทำความเข้าใจก่อนว่า 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 เป็นข้อจำกัดในการใช้งานเว็บของเรา เพราะมันเป็นเพียงเครื่องอำนวยความสะดวกให้เราเท่านั้นครับ