php操作数据库

<?php

session_start();

#面向过程

function create_connection(){

$conn = mysqli_connect('127.0.0.1','root','123456','learn_2') or die("数据库连接失败");

mysqli_query($conn,"set names utf8");

return $conn;

}

#面向对象

function create_connection_opp(){

$conn = new mysqli('127.0.0.1','root','123456','learn_2') or die("数据库连接失败");

$conn->query("set names utf8");

#$conn->set_charset('utf8');

return $conn;

}

function test_mysqli_opp(){

$conn = create_connection_opp();

$sql = "select * from user";

result = conn->query($sql);

//获取结果集行数

#echo $result->num_rows;

rows = result->fetch_all();

var_dump($rows);

#关联数组的方式

rows = result->fetch_all(MYSQLI_ASSOC);

var_dump($rows);

foreach (rows as row){

echo $row['username']."<br>" ;

echo $row['password'];

}

}

//mysql预处理功能

function mysqli_prepare_stmt(){

$conn =create_connection_opp();

$sql = "select * from user where username = ?";

//实例化prepared statement预处理对象

stmt = conn->prepare($sql);

#实例化需要将参数进行绑定 "s"代表字符串 "i"整数 "d"小数 "b"二进制

stmt-\>bind_param("s",username);

$username = 'zs';

#要获取查询结果,还需要绑定结果参数。不需要返回结果无需此操作

stmt-\>bind_result(username,$password);

#返回值bool ture执行成功 false执行失败

$stmt->execute();

#调佣结果并进行处理

$stmt->store_result();

while($stmt->fetch()){

echo username,password,'<br>';

}

#输出行数

echo $stmt->num_rows.'<br>';

echo $stmt->affected_rows;

/**

* $sql = "select * from user where username = ? and password = ?";

* stmt-\>bind_param("ss",username,$password);

*/

}

mysqli_prepare_stmt()

?>

相关推荐
tryxr28 分钟前
如何基于UDP实现可靠传输
网络·网络协议·udp·tcp
unable code1 小时前
内存取证-卡比卡比卡比
网络安全·ctf·misc·1024程序员节·内存取证
~央千澈~1 小时前
抖音弹幕游戏开发之第8集:pyautogui基础 - 模拟键盘操作·优雅草云桧·卓伊凡
网络·python·websocket·网络协议
日更嵌入式的打工仔1 小时前
LAN9253中文注释第七章
笔记·原文翻译
九丝城主2 小时前
1V1音视频对话3--优化TURN 为生产安全版
安全
Web打印3 小时前
Phpask(php集成环境)之16 怎样彻底停用一个网站
开发语言·php
临水逸3 小时前
飞牛fnos 2025 漏洞Java跨域URL浏览器
java·开发语言·安全·web安全
独行soc3 小时前
2026年渗透测试面试题总结-24(题目+回答)
网络·python·安全·web安全·渗透测试·安全狮
天荒地老笑话么4 小时前
NAT 下虚拟机为什么能上网:路由表 + SNAT 证明
网络安全
Bruce_Liuxiaowei5 小时前
渗透测试中的提权漏洞:从低权限到系统控制的全解析
网络·windows·安全