จะทำอย่างให้ช่อง input ไม่สามารถใส่ javascript ได้ครับ

HTML Basic
สำหรับนักพัฒนาเว็บไซต์มือใหม่ HTML , CSS และการใช้ Tools ต่างๆ ในการพัฒนาเว็บไซต์

Moderator: mindphp

ภาพประจำตัวสมาชิก
jamepiyawat
PHP VIP Members
PHP VIP Members
โพสต์: 2008
ลงทะเบียนเมื่อ: 21/05/2019 10:45 am

จะทำอย่างให้ช่อง input ไม่สามารถใส่ javascript ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย jamepiyawat »

พอดีว่าผมมีช่องที่ทำให้ผู้ใช้กรอกชื่อ แต่ว่าถ้าเราใส่ javascript เข้าไปแล้วกลายเป็นการ run คำสั่ง javascript ครับ
อยากทราบวิธีแก้ว่าจะทำอย่างใรให้ input ของเราไม่สามารถรัน javascript ได้ครับ

ลองใส่โค้ดนี้ลงในช่อง input

โค้ด: เลือกทั้งหมด

<script language="javascript">alert('Please input Input 1'); </script>
Selection_999(1338).png
Selection_999(1338).png (22.05 KiB) Viewed 2218 times
ผลที่ได้
Selection_999(1339).png
Selection_999(1339).png (17.67 KiB) Viewed 2218 times
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41356
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: จะทำอย่างให้ช่อง input ไม่สามารถใส่ javascript ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

input เป็น text ธรรมดาย่อมทำได้
แต่เราต้อง ป้องกันต้อนแสดงผล ไม่ให้ echo tag javascript หรือ tags html จากข้อมูลที่ input เข้าไป
ลองดู
https://www.mindphp.com/%E0%B8%84%E0%B8 ... chars.html
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
jamepiyawat
PHP VIP Members
PHP VIP Members
โพสต์: 2008
ลงทะเบียนเมื่อ: 21/05/2019 10:45 am

Re: จะทำอย่างให้ช่อง input ไม่สามารถใส่ javascript ได้ครับ

โพสต์ที่ยังไม่ได้อ่าน โดย jamepiyawat »

ทำได้แล้วครับ ขอบคุณครับ

หลังจากรับค่าใน input ให้เราใช่คำสั่ง htmlspecialchars ก่อนจะนำค่า input นั้นออกมาแสดง

โค้ด: เลือกทั้งหมด

$name = $_POST['name'];
$name = htmlspecialchars($name);
ผลที่ได้
Selection_999(1340).png
Selection_999(1340).png (22.62 KiB) Viewed 2210 times
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 85