PHP5.5 คำสั่ง mysql_ จำเป็นต้องเปลี่ยนเป็น mysqli_ หรือไม่ หรือยังใช้การเขียนรูปแบบเดิมได้
สามารถเขียนแบบเดิมได้ครับ
แต่ถ้าพี่เริ่มผมแนะนำให้เริ่มด้วย mysqli เลยครับ เพราะมันเป็นตัวใหม่กว่า ไหนๆมันก็ใหม่ แล้วก็น่าจะลองครับ
Date :
2016-07-12 22:35:22
By :
slaparum
แล้วทำไม Source Code บางตัวที่เคยเขียนไว้ เคยใช้ได้
ทำไมถึงรัน Error message แปลกๆ บ่อยจังเลยครับ แทบทุกอันเลย
พอดีห่างมาเป็นปีแล้วอะครับ :)
อาทิเช่น
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead
Deprecated: Function mysql_db_query() is deprecated
อะไรประมาณนี้อะครับ ทั้งๆที่เมื่อก่อนใช้ได้ปกติ...
ขอบคุณครับ
ประวัติการแก้ไข 2016-07-12 23:25:03
Date :
2016-07-12 23:01:02
By :
jwebshop
ผมแปลไม่ค่อยถูกอะครับ
**แต่มันเหมือนจะบอกว่า Mysql มันเป็นเก่า และจะถูกยกเลิก และลบในอนาคต , คุณควรหันมาใช้ Mysqli_* หรือ PDO
แล้วมันสามารถเชื่อมต่อกับฐานข้อมูลได้ไหมครับ ถ้าเชื่อมต่อฐานข้อมูลได้ พี่ใส่ @ลงข้างหน้า mysql
Code (PHP)
$connect = @mysql_connect('localhost','root','');
หรือจะใช้แบบนี้ก็ได้ครับ
Code (PHP)
<?php
$host='IP or Server Name (usually "localhost") ';
$user='Database user';
$password='Database password';
$db='Database name';
//PHP 5.4 o earlier (DEPRECATED)
$con = mysql_connect($host,$user,$password) or exit("Connection Error");
$connection = mysql_select_db($db, $con);
//PHP 5.5 (New method)
$connection = mysqli_connect($host,$user,$password,$db);
?>
Date :
2016-07-13 06:11:10
By :
slaparum
การเขียนรูปแบบเก่าที่ล้าสมัย และกำลังถูกยกเลิกใน version ที่สูงขึ้น
แล้วจะเขียนแบบโบราณอยู่หรือ?
แม้กระทั่งการเขียนแบบ Procedural ก็ล้าสมัยไปแล้ว
แต่หากคุณเขียนแบบ Object oriented ก็จะยัง Support ทั้ง v5, v7
Code (PHP)
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* create temp table */
$mysqli->query("CREATE TEMPORARY TABLE myCountry LIKE Country");
$query = "INSERT INTO myCountry SELECT * FROM Country WHERE Code LIKE ?";
/* prepare statement */
if ($stmt = $mysqli->prepare($query)) {
/* Bind variable for placeholder */
$code = 'A%';
$stmt->bind_param("s", $code);
/* execute statement */
$stmt->execute();
printf("rows inserted: %d\n", $stmt->affected_rows);
/* close statement */
$stmt->close();
}
/* close connection */
$mysqli->close();
?>
Date :
2016-07-13 08:31:08
By :
fossil31
ตอนนี้ PHP มาถึง version 7 แล้ว และมีความเร็วมาเป็นอันดับ 1 เมื่อเทียบกับ Ruby และ Python
หลายๆ ฟังก์ชัน ถูฏยกเลิกไปเยอะมาก เราต้องปรับตัวกันครับ ตามให้ทันสิ่งดีๆ ที่กำลังรอเราอยู่ :D
Date :
2016-07-13 08:53:48
By :
ALTELMA
PHP 5.5 ใช้ไม่ได้แล้วนะครับ version สุดท้ายที่ใช้ได้คือ 5.4 ครับ ยังไงก็เช็คดูอีกที
และแม้แต่ mysqli procedural code ก้จะถูกยกเลิกไนเร็วๆนี้ ต้องหัดเขียนเป็น oop แล้วนะครับ
แต่ก็อย่าทิ้งมันซะทีเดียว เพราะอีกหลายปีกว่าเจ้าของ server จะปรับตัวตาม technology
มีหลายเจ้าที่ยังใช้ของเก่า เพราะมันยังใช้ได้อยู่ ก็คงจะรอจน server พังนั่นแหล่ะครับถึงยอมเปลี่ยน
เจอมากับตัวแนะให้เปลี่ยนบอกเอาไว้ก่อนยังไม่มีงบ 5555
Date :
2016-07-13 09:12:56
By :
Chaidhanan
โอเคครับ โอเค ขอบคุณมากครับ
Date :
2016-07-13 10:00:57
By :
jwebshop
Load balance : Server 02