PHP连接MySQL相关操作

本文介绍了在PHP 5及以上版本中连接MySQL的方法,推荐使用MySQLi,并重点讲解了面向对象的方式。通过示例展示了如何使用MySQLi进行数据库连接、预编译SQL语句进行插入操作,以及bind_param()函数的使用。代码示例适用于增删改查等数据库基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP 5 及以上版本建议使用以下方式连接 MySQL :

  • MySQLi 
  • PDO (PHP Data Objects)

我个人更偏好使用MySQLi,所以以MySQLi为例连接操作MySQL

而MySQLi又分为面向对象和面向过程两种方法,推荐使用面向对象。

下面以面向对象为例:

首先我们操作数据库之前要连接数据库

<?php
$servername = "localhost"; //$servername是你的数据库服务器名 正常情况下默认为localhost;
$username = "username";    //$username 是你的数据库用户名 正常情况下默认为root 
$password = "password";    //$password 是你的数据库用户密码 根据自己的情况修改
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功";
?>

连接成功后我们可以对数据库进行crud操作了 即增删改查

以插入数据为例,这里我们采用预编译的方式来操作数据库  

假设我们在MySQL中创建了一个mydb的数据库 并且已经有一个user表

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "mydb";
 
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
 
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
 
// 预处理及绑定
$stmt = $conn->prepare("insert into user (username,pwd,age) values(?,?,?)");
$stmt->bind_param("sss", $username, $pwd,$age);
 
// 设置参数并执行
$username = "Blex"  
$pwd = "1234"
$age = "18"
$stmt->execute();
echo "新记录插入成功";
$stmt->close();
$conn->close();
?>

对sql语句进行一下说明:在sql语句中我们使用占位符‘?’来指代我们要传入的数据库参数。

接下来我们看一下bind_param()函数,该函数绑定了SQL的参数,且告诉数据库参数的值。

其中"sss"表示处理其余参数的数据类型。‘s’是告诉数据库该参数为字符串。

参数有以下四种类型:

  • i - integer(整型)
  • d - double(双精度浮点型)
  • s - string(字符串)
  • b - BLOB(binary large object:二进制大对象
注意:每个参数都需要指定类型。

对于其他的数据库操作可以参考上面的代码,只要将相应的sql语句写入$conn->prepare()中执行就OK了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值