我还是PHP和MYSQL的新手,我正在尝试用现代编码技术学习。我在网上找到的所有东西似乎都已经过时了。
有人可以为我推荐一些东西吗?如果下面的代码已经过时,我也很好奇?如果它确实过时了,你能建议更新更安全的方法吗?
<?php
$connection = mysql_connect("localhost", "root", "");
if (!$connection) {
die("Oops, error happened: " . mysql_error());
}
?>
答案 0 :(得分:10)
使用PDO
个功能。
使用PDO进行数据库连接:
$conn = new PDO('mysql:host=localhost;dbname=myDatabase', $username, $password);
答案 1 :(得分:3)
使用PHP连接数据库的最安全方法
如果您正在寻找安全的方法,您实际需要通过注射来验证您的查询。 MySQL
扩展程序很快就会被弃用,但这并不意味着它现在不是safe
,而是社区放弃了扩展程序的进一步开发。
您可以尝试PDO
和mysqli
进行数据库查询,两者都很好。
您的选择应取决于您的数据库选择 -
PDO
支持大约12种不同的驱动程序,而MySQLi
仅支持MySQL
。
可用的PDO驱动程序列表
CUBRID (PDO)
MS SQL Server (PDO)
Firebird/Interbase (PDO)
IBM (PDO)
Informix (PDO)
MySQL (PDO)
MS SQL Server (PDO)
Oracle (PDO)
ODBC and DB2 (PDO)
PostgreSQL (PDO)
SQLite (PDO)
4D (PDO)
来源 - pdo-drivers-in-php
API支持
PDO
和MySQLi
都提供了面向对象的API ,但MySQLi也提供了procedural API
。
答案 2 :(得分:2)
是的,您的代码已过时。和mysql_connect,mysql_query等将很快被删除。
基本上有两种选择:(不安装第三方应用程序)
查看http://php.net/manual/en/book.pdo.php
OR
答案 3 :(得分:2)
答案 4 :(得分:0)
首先:
是的,这条线已经过时了。
您可以使用与mysqli_*
非常相似的mysql_
函数。
其次,如果您对面向对象编程有所了解,可以使用PDO,如其他答案所示。
最后要提到的是永远不会向用户显示错误消息。他不需要知道出了什么问题,他也不需要知道出了什么问题。因此,die()
永远不会出现错误消息。