目录
注意:mysql_connect()方法自 PHP 5.5.0 起已废弃,并在 PHP 7.0.0 开始被移除,详情见php网站。
吐槽:一个人学习代码真的特别容易走弯路,经常性的因为一个特别小的错误调半天,浪费时间浪费精力。
记录下学习php连接mysql的三种方式:
一、mysql连接
<?php
$username = $_POST["username"];
$password = $_POST["password"];
$conn = mysql_connect("127.0.0.1:3306","root","root");
mysql_select_db("test",$conn);
mysql_query("set names utf8");
$sql = "select username from hack where username='{$username}' and password='{$password}'";
$res = mysql_query($sql);
if (mysql_num_rows($res)>0){
echo "success";
}else{
echo "failure";
}
mysql_close($conn);
?>
注意:mysql_connect()方法自 PHP 5.5.0 起已废弃,并在 PHP 7.0.0 开始被移除,详情见php网站。
所以尽量不要使用旧版本的连接方法了,紧跟时代。
二、(1)mysqli连接(面向对象)
<?php
header("Content-Type:text/html;charset=utf8");
$username = $_POST["username"];
$password = $_POST["password"];
$conn = new mysqli("localhost:3306", "root", "root","test");
//mysqli_select_db($conn,$dbname);
if ($conn->connect_error){
die("连接失败".$conn->connect_error);
}
$sql = $conn->query("select username from hack where username ='{$username}' and password = '{$password}'");
$row = mysqli_fetch_array($sql);
if ($row > 0){
echo "success";
}else{
echo "failure";
}
?>
(2)mysqli连接(面向过程)
感觉mysqli_connect和php 5.0之前的mysql_connect用法有点像。
<?php
$servername = "localhost";
$username = "root";
$password = "root";
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
// 检测连接
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$dbname="jtsys";
mysqli_select_db($conn,$dbname);
echo "连接成功";
?>
三、PDO连接实例
代码实例:
<?php
$servername = "localhost";
$username = "root";
$password = "root";
try {
$conn = new PDO("mysql:host=$servername;dbname=test",$username, $password);
echo "连接成功";
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
四、三者区别
关闭连接方式区别
|
PDO比MySQLi最大的优点就是PDO支持很多种数据库,而MySQLi只支持MySQL。
至于更详细的区别,这里暂不深究,可参考PDO和Mysqli的区别。