前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >yii2防止sql注入

yii2防止sql注入

作者头像
贵哥的编程之路
发布2022-03-25 20:48:11
1.3K0
发布2022-03-25 20:48:11
举报
代码语言:javascript
复制
-- phpMyAdmin SQL Dump
-- version 4.5.1
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: 2022-02-28 10:09:39
-- 服务器版本: 10.1.13-MariaDB
-- PHP Version: 5.6.21

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `ssss`
--

-- --------------------------------------------------------

--
-- 表的结构 `goods`
--

CREATE TABLE `goods` (
  `id` int(11) NOT NULL,
  `name` varchar(100) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- 转存表中的数据 `goods`
--

INSERT INTO `goods` (`id`, `name`) VALUES
(1, '11111'),
(2, '22222'),
(3, '333'),
(4, '444'),
(5, '555');

--
-- Indexes for dumped tables
--

--
-- Indexes for table `goods`
--
ALTER TABLE `goods`
  ADD PRIMARY KEY (`id`);

--
-- 在导出的表使用AUTO_INCREMENT
--

--
-- 使用表AUTO_INCREMENT `goods`
--
ALTER TABLE `goods`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

gii进comon/models下面. sql注入情况:

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
<?php
namespace frontend\controllers;
use Yii;
use yii\web\Controller;
use common\models\Goods;
class UserController extends Controller
{
	public function actionIndex()
	{
	$id = Yii:: $app ->request->get( 'id');

$sql     = "SELECT * FROM goods WHERE id=$id or 1=1" ;
$r=Goods::findBySql($sql)->all();
var_dump($r);

		
	}
}

全部显示出来了

在这里插入图片描述
在这里插入图片描述

防止注入情况: 怎么搞?把数据传进去.

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
<?php
namespace frontend\controllers;
use Yii;
use yii\web\Controller;
use common\models\Goods;
class UserController extends Controller
{
	public function actionIndex()
	{
	$id = Yii:: $app ->request->get( 'id');

$sql     = "SELECT * FROM goods WHERE id=:id" ;
$r=Goods::findBySql($sql,[':id'=>$id])->all();
var_dump($r);

		
	}
}
在这里插入图片描述
在这里插入图片描述
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-02-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MariaDB
腾讯云数据库 MariaDB(TencentDB for MariaDB) 让您轻松在云端部署、使用 MariaDB 数据库。MariaDB 是在 MySQL 版权被 Oracle 收购后,由 MySQL 创始人 Monty 创立,其版权授予了“MariaDB基金会(非营利性组织)”以保证 MariaDB 永远开源,良好的开源策略,是企业级应用的最优选择,主流开源社区系统/软件的数据库系统,均已默认配置 MariaDB。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com