PHP操作mysql(mysqli + PDO)

前端之家收集整理的这篇文章主要介绍了PHP操作mysql(mysqli + PDO)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

MysqLi面向对象方式操作数据库

添加修改删除数据

$MysqLi = new MysqLi('localhost',root123456test');
$MysqLi->query(set names utf8);
//添加数据
$result = $MysqLi->query("INSERT INTO users(name,money) VALUE (张三10)");
$result 李四200)");

修改数据
$result UPDATE users SET money=+10 WHERE id = 3");

删除数据
$result DELETE FROM users WHERE id=");

var_dump($result);

查询数据

header("content-type:text/html;charset=utf-8");
$MysqLi );

$result SELECT * FROM users");
$data = $result->fetch_all(MysqLI_ASSOC);
var_dump($data);

事务控制

header(content-type:text/html;charset=utf-8);
$MysqLi ->autocommit(false); 开启事务
$sql1 = "where id1";
$sql2 20";
$MysqLiquery($sql1);
$r1 affected_rows;
$MysqLiquery($sql2);
$r2 affected_rows;
if($r1>0 && $r20){
    $MysqLicommit(); 事务提交
    echo 操作成功;
}else{
    $MysqLirollback(); 事务回滚
    echo 操作失败;
}

预处理-增删改操作

header();
$sql money) VALUE(?,?)";
$stmt prepare($sql);

$name  "王小小";
$money 500;
$stmt->bind_param(si);
$result = $stmtexecute();
var_dump($result);

$name  "王大大";
$600();
var_dump($result);

预处理-查询操作

header('',1)">>?";
$stmt ($sql);
$idi,$id);
$stmt->bind_result($id,1)">);
$stmt();

while($stmtfetch()){
    $data[] = [
        'id'=>$id,'name'=>$name,'money'=>$money
    ];
}
var_dump($data);

【PDO方式操作数据库

PDO查询数据

header();
$dsn = "MysqL:host=localhost;dbnametest";
$pdo = new PDO($dsn,1)">);
$pdoexec( users";
$stmt = $pdoquery($sql);
//$data (PDO::FETCH_ASSOC);
$data fetchAll(PDO::FETCH_ASSOC);
var_dump($data);

PDO增删改数据

header(500 ";
$result exec($sql);
var_dump($result);

PDO事务控制

header(->beginTransaction(); 100 ";
$r1 ($sql1);

$sql2 = "UPDATE1 users 2";
$r2 ($sql2);

){
    $pdo事务提交
    echo "操作成功";
}{
    $pdorollBack(); 事务回滚
    echo "操作失败";
}
$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT,1)">//var_dump($result);

PDO预处理

header();

//$sql :id";
$sql 1000 :id";
$stmt ($sql);

$id 4bindParam(":id",$id);

//$stmt->bindValue(1,1)">();
var_dump($result);

//$data  fetchAll(PDO::FETCH_ASSOC);
//var_dump($data);

常见的sql注入方式及防范措施

header();
$id = isset($_GET'id'])?$_GET]:;
$sql ".$id;
$stmt query($sql);
$data fetchAll(PDO::FETCH_ASSOC);
var_dump($data);

1
1 or 11     users
1;drop table test;--

header();

$sql ($sql);
$id ();
$data fetchAll(PDO::FETCH_ASSOC);
var_dump($data);
原文链接:/mysql/881339.html

猜你在找的MySQL相关文章