2.php连接mysql

看了网上大多数sql注入教学文章发现了一个问题很多人都是一来就教' and 1=1 -- -' and 1=2 -- -并没有说明本质,我终究崇尚一句话代码决定天花板,这亦是如此。当你知道代码怎么写的就会慢慢知道哪里存在注入或者为什么一会是'一会是"了。

题目:创建school数据库,student表,字段为:id,name和mail。当用户通过url get传参id值,则输
出id对应的值。否则输出全部值。

0x01 连接mysql

<?php
$host = "localhost";
$user = "root";
$pass = "root";
mysql_connect($host,$user,$pass);
mysql_select_db("school");
?>

0x02 获取url传参以及定义sql语句

<?php
$host = "localhost";
$user = "root";
$pass = "root";
mysql_connect($host,$user,$pass);
mysql_select_db("school");
if(isset($_GET["id"])){
	$id = $_GET["id"];
	$sql = "select * from student where id = $id";
}else{
	$sql = "select * from student";
}
?>

在php中 isset 函数就是判断是否存在, $_GET['id'] 就是通过url的get传参。例如 xxx.php?id=1

0x03 执行sql语句,并且返回结果

<?php
$host = "localhost";
$user = "root";
$pass = "root";
mysql_connect($host,$user,$pass);
mysql_select_db("school");
if(isset($_GET["id"])){
	$id = $_GET["id"];
	$sql = "select * from student where id = $id";
}else{
	$sql = "select * from student";
}
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
	echo "id:".$row["id"]." "."username:".$row["username"]."    "."mail:".$row["mail"]."<br>";
}
?>

这里通过 mysql_query 执行sql语句,返回一个结果集。然后通过 mysql_fetch_arry 函数进行切片。
我们可以理解为获取一个班上的所有人是一个整体,然后切片分成一个一个的人。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值