สาเหตุของปัญหา คือ ตัวแปลภาษา PHP ของเราไม่มีฟังก์ชั่น
โค้ด: เลือกทั้งหมด
mysql_real_escape_string()
รวมถึงผองเพื่อนในตัว mysql_***
ทีนี้มาดูวิธีแก้กันง่ายๆ คือ เปลี่ยนไปใช้ สกุล
mysqli_*** กันแทน mysql_***
เช่น
โค้ด: เลือกทั้งหมด
mysql_real_escape_string()
โค้ด: เลือกทั้งหมด
mysqli_real_escape_string()
แต่สำหรับใครที่จะเอาทางลัดแบบขี้เกียจๆ ( ) มาไปทางลัดกัน
คือเอาสร้างฟังก์ชั่นที่ไม่มีให้ใช้ ขึ้นมาใช้เอง โดยเอา ตัวฟังก์ชั่น built in function ที่มีมาประยุกต์ใช้
ยกตัวอย่าง
โค้ด: เลือกทั้งหมด
if(function_exists('mysql_real_escape_string') ) {
function mysql_real_escape_string($str){
return mysqli_real_escape_string($str);
}
}
หรือ เอาลัดกว่านั้นก็
php.ini แก้ไข
โค้ด: เลือกทั้งหมด
extension=mysql.so
ถ้าเป็น
โค้ด: เลือกทั้งหมด
extension=mysql.dll
ยัดมันกลับไปแล้ว restart web server
ดูเพิ่มเติม mysqli_query
https://www.mindphp.com/%E0%B8%84%E0%B8 ... query.html
php8php7php5