แนวทางแก้ปัญหา php error Uncaught Error: Call to undefined function mysql_real_escape_string() in...
โพสต์แล้ว: 01/12/2020 2:13 am
แนวทางแก้ปัญหา php error ว่า Uncaught Error: Call to undefined function mysql_real_escape_string() in...
สาเหตุของปัญหา คือ ตัวแปลภาษา PHP ของเราไม่มีฟังก์ชั่น
มันหานี้จะเจอปัญหา เมื่อเอาโค้ดที่เขียนไว้ตอน เป็น PHP5 แล้วเอามารันกับ PHP7 หรือ PHP8 สำหรับ ซึ่งได้ถอดฟังก์ชั่นนี้ ออกไปแล้ว
รวมถึงผองเพื่อนในตัว mysql_***
ทีนี้มาดูวิธีแก้กันง่ายๆ คือ เปลี่ยนไปใช้ สกุล
mysqli_*** กันแทน mysql_***
เช่น
แทนที่ด้วย
ค้นหาและแทนทีได้เลย
แต่สำหรับใครที่จะเอาทางลัดแบบขี้เกียจๆ ( ) มาไปทางลัดกัน
คือเอาสร้างฟังก์ชั่นที่ไม่มีให้ใช้ ขึ้นมาใช้เอง โดยเอา ตัวฟังก์ชั่น built in function ที่มีมาประยุกต์ใช้
ยกตัวอย่าง
โค้ดตัวอย่างนี้พี่เป็นแนวทางในการใช้งานนะครับ ไปเขียนต่อกันเองนะ
หรือ เอาลัดกว่านั้นก็
php.ini แก้ไข
(กรณี web server เป็น Linux)
ถ้าเป็น
(กรณี web server เป็น Windows)
ยัดมันกลับไปแล้ว restart web server
ดูเพิ่มเติม mysqli_query
https://www.mindphp.com/%E0%B8%84%E0%B8 ... query.html
php8php7php5
สาเหตุของปัญหา คือ ตัวแปลภาษา 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