Devdit
 

PHP ป้องกันไม่ให้กรอก JavaScript ในช่อง TextBox ทำอย่างไร

1.9K

สร้างฟอร์ม HTML ประกอบด้วย input type text ด้วยภาษา PHP กรณีผู้ใช้งานกรอกข้อมูลปกติจะไม่มีปัญหา แต่พอใส่เป็น script ของ JavaScript โปรแกรมจะทำงานตาม JavaScript ดังกล่าว ต้องการไม่ให้ JavaScript ที่กรอกผ่าน TextBox ทำงานต้องเขียนโปรแกรมอย่างไร

<form action="index.php" method="post">
    กรุณากรอกชื่อ <input type="text" name="name">
    <input type="submit" value="ตกลง">
</form>
<?php
    $name = $_POST['name'];
    echo $name;
?>

 

คำแนะนำ

กรณีไม่ต้องการให้ JavaScript ที่ผู้ใช้งานกรอกผ่าน TextBox ทำงาน แนะนำให้ใช้คำสั่ง htmlspecialchars คลุมตัวแปรที่รับค่าจากช่อง TextBox ซึ่งฟังก์ชันนี้จะแปลงอักขระพิเศษให้เป็นรหัสอักษร สามารถเขียนโปรแกรมได้ดังนี้

<?php
    $name = $_POST['name'];
    echo htmlspecialchars( $name );
?>
แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ