PHP连接MySQL数据库的几种方式
web PHP 2019-05-05 1915 0
关于本站

“最难不过坚持”

本人承接扒站仿站,php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

6281448 2594 39
最新评论
https://jueru.net/
评 留言
:weixiao:
评 留言
:shuijiao: :weiqu: :zhenbang: :leng:
评 留言
:yiwen: :yiwen: :yiwen: :yiwen:
评 EasySass: could not generate CSS file. See Output panel for details.
这个业务逻辑多少都有点奇怪了,阅读浏览次数增值在新闻详情页的控制器方法里setInc,这怎么还写进模型事件里了。如果非要用onAfterRead也可以,把新闻文章的内容单独分出来一个news_content表,然后把它和news做关联,然后给news_content表的onAfterRead事件做增值处理,这样点进新闻页内查询到文章内容时才会触发它。
评 TP6模型事件-查询后onAfterRead不好用
文章标签更多
ThinkPHP (254)
Mysql (58)
DedeCms (33)
jQuery (67)
证件照 (1)
setInc (4)
setDec (4)
onclick (5)
打开边栏(ESC) 关闭边栏(ESC)
PHP 5 及以上版本建议使用以下方式连接 MySQL :
MySQLi :MySQLi 只针对 MySQL 数据库,MySQLi 还提供了 API 接口。
PDO (PHP Data Objects):PDO 应用在 12 种不同数据库中。
共同点:
  1. 两者都是面向对象
  2. 两者都支持预处理语句。 预处理语句可以防止 SQL 注入,对于 web 项目的安全性是非常重要的。
确保wamp里已经安装好了MySQLi或PDO,查看方式:echo phpinfo();
接下来将会使用以下三种方式来演示 PHP 操作 MySQL:
MySQLi (面向对象)
MySQLi (面向过程)

PDO

1. MySQLi - 面向对象

<?php
header('Content-Type: text/html;charset=utf-8');
// echo phpinfo();
// MySQLi面向对象
// 在我们访问MySQL数据库之前,我们需要先连接到数据库服务器
$servername = "localhost";
$username = "root";
$password = "";
$database = "test";
// 创建连接
$conn = new mysqli($servername, $username, $password, $database);
// mysqli_set_charset($conn,"utf8"); // 解决中文乱码
$conn->query("SET NAMES utf8"); // 解决中文乱码方法二
// 检测连接
if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
} 
echo "连接成功";
// 查询
$sql = "select * from users2";
$res = $conn->query($sql);
$data = $res->fetch_all();
var_dump($data);
// 添加
$loginName = 'zhangsan';
$loginSecret = '123455';
$query = "insert into users2(loginName,loginSecret) values('" . $loginName . "','" . $loginSecret . "')";
$rs = $conn->query($query);
var_dump($rs);
?>
2.  MySQLi - 面向过程
<?php
header('Content-Type: text/html; charset=utf-8');
// MySQLi - 面向过程
$servername = "localhost";
$username = "root";
$password = "";
$database = "test";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $database);
// 检测连接
if (!$conn) {
    die("连接失败:" . mysqli_connect_error());
} 
echo "连接成功";
// 修改数据库连接字符集为 utf8
mysqli_set_charset($conn,"utf8");
// 查询
$sql = "select * from users2 "; //SQL语句
$result = mysqli_query($conn, $sql); //查询
while ($row = mysqli_fetch_array($result)) {
    echo $row['loginName'] . "<br/>";
} 
mysqli_close($conn);
?>

3. PDO连接MySQL数据库

<?php
header('Content-type:text/html; charset=utf-8');
$db_Type = "mysql"; //数据库类型
$host = "localhost"; //主机名
$dbName = "test"; //数据库名
$userName = "root"; //用户名
$password = ""; //密码
$dsn = "{$db_Type}:host={$host};dbname={$dbName}";
try {
    $pdo = new PDO ($dsn, $userName, $password); //创建一个连接对象
    $pdo->exec('set names utf8'); //设置编码
    $sql = "insert into users2 (loginName,loginSecret) VALUES ('李四','123423')";
    $pdo->exec($sql);
} catch (PDOException $e) {
    die('操作失败' . $e->getMessage());
} 
// 关闭连接
$pdo = null;
?>
连接在脚本执行完毕后会自动关闭,也可以使用代码关闭连接:

MySQLi - 面向对象
$conn->close();
 
MySQLi - 面向过程
mysqli_close($conn);
 
PDO
$conn = null;


版权声明:本篇文章来源于网络。 来源链接

相关推荐
php实现ZIP压缩文件解压缩,中文乱码解决方法(重要)
PHP | 2019-04-30 5539
直接上代码,具体代码里面都有注释。直接中文压缩文件解压到中文文件夹。 <?php // 需开启配置 php_zip.dll // phpinfo(); header("Content-type:text/html;charset=utf-8"); /* * $filename 被解压文件名 * $path 解压...
openssl_private_decrypt解密失败
PHP | 2019-01-16 5514
复制别人的解密程序,原程序可以解密,复制过来就不可以 一步步尝试发现,秘钥换行符有区别, 原秘钥有换行符,复制过来不知道什么时候把换行符清空了,成了一行字符串了。
评论:0条
评论加载中...
发表评论