您的位置:首页 > Web前端

2016/3/24 ①数据库与php连接 三种输出fetch_row()、fetch_all()、fetch_assoc() ②增删改时判断(布尔型) ③表与表之间的联动 ④下拉菜单 ⑤登陆 三个页面

2016-03-24 14:22 633 查看
①数据库与php连接 图表

header("content-type:text/html;charset=utf-8");
//第一种方式:
//1,生成连接,连接到数据库上的服务器
// localhost:主机位置,如果是网络上的要写Ip地址
// root:服务器管理员   ”123“  密码
@$test=mysql_connect("localhost","root","123");
//2,选择数据库
mysql_select_db("test3",$test);
//3,写SQL语句
$sql="select * from student";//查询方式
//$sql="delete from student where Sno='101'";
//如果是增删改如上 返回的是个布尔值成功显示的是1
//4,执行SQL语句
$result=mysql_query($sql);
//5,提取数据  fetch_row 逐条提取每一行
while($array=mysql_fetch_row($result))
{
print_r($array);
}




//第二种方式  面向对象的方式
//1,生成连接对象
//$db=new mysqli("服务器名","用户名","密码","数据库");
$db=new mysqli("localhost","root","123","test3");
//2,判断是否连接成功
!mysqli_connect_error() or die ("连接失败!");
//相当于{echo "连接失败!"; exit;//直接退出程序}
//3,写sql语句
$sql="select * from student";
//4,执行sql语句
$result=$db->query($sql);
//5,操作结果
$row=$result->fetch_row();

print_r($row);//取一条 用while循环  遍历
//①用fetch_row();
while ($row=$result->fetch_row()) {
print_r($row);
echo "<br>";
}


显示:



接上例代码
1 //②用fetch_all();
$arra=$result->fetch_all();//一次返回所有的数据,以二维数组形式返回
print_r($arra);


显示:



接上上例代码
1 //③fetch_assoc();以关联数组的形式返回
while($array=$result->fetch_assoc()){
print_r($array);
echo "<br>";
}


显示:


②增删改时判断(布尔型)

//1,生成连接对象
//$db=new mysqli("服务器名","用户名","密码","数据库");
$db=new mysqli("localhost","root","123","test2");
//2,判断是否连接成功
!mysqli_connect_error() or die ("连接失败!");
//相当于{echo "连接失败!"; exit;//直接退出程序}
//3,写sql语句
$sql="delete from nation where Code='n001'";
//4,执行sql语句
$result=$db->query($sql);
if ($result) {
echo "增删改成功";
}
else{
echo "增删改失败";
}






//1,生成连接对象
//$db=new mysqli("服务器名","用户名","密码","数据库");
$db=new mysqli("localhost","root","123","test2");
//2,判断是否连接成功
!mysqli_connect_error() or die ("连接失败!");
//相当于{echo "连接失败!"; exit;//直接退出程序}
//3,写sql语句
$sql="insert into nation  values('n001','汉族')";
// //4,执行sql语句
$result=$db->query($sql);
if ($result) {
echo "增删改成功";
}
else{
echo "增删改失败";
}






③表与表之间的联动

制表

<?php
header("content-type:text/html;charset=utf-8");
//1,建立连接
$db=new mysqli("localhost","root","123","test2");
//2,判断是否有问题
!mysqli_connect_error() or die("连接失败!");
//3,写Sql语句
$sql="select * from info";
//4,执行Sql语句
$result=$db->query($sql);
//5,操作输出结果
//$row=$result->fetch_row();//单独输出一条
//显示
echo"<table width=100% border=1 cellspacing='0' cellpadding='0'>";
echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td><td>生日</td></tr>";
while($row=$result->fetch_row()){//循环输出
//$sex=$row[2]?"男":"女";

echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$sex</td><td>$row[3]</td><td>$row[4]</td></tr>";
}

echo"</table>"

?>


显示:



$sex=$row[2]?"男":"女";  通过三位运算符转换




表与表之间的联动①全式

<?php
header("content-type:text/html;charset=utf-8");
//1,建立连接
$db=new mysqli("localhost","root","123","test2");
//2,判断是否有问题
!mysqli_connect_error() or die("连接失败!");
//3,写Sql语句
$sql="select * from info";
//4,执行Sql语句
$result=$db->query($sql);
//5,操作输出结果
//$row=$result->fetch_row();//单独输出一条
//显示
echo"<table width=100% border=1 cellspacing='0' cellpadding='0'>";
echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td><td>生日</td></tr>";
while($row=$result->fetch_row()){//循环输出
$sex=$row[2]?"男":"女";
$minzu=ShowNation($row[3]);
echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$sex</td><td>$minzu</td><td>$row[4]</td></tr>";
}

echo"</table>";

function ShowNation($Code)
{
//1,建立连接
$db=new mysqli("localhost","root","123","test2");
//2,判断是否有问题
!mysqli_connect_error() or die("连接失败!");
//3,写Sql语句
$sql="select Name from nation where Code='$Code'";
//4,执行Sql语句
$result=$db->query($sql);
//5,处理显示
$getrow=$result->fetch_row();
return $getrow[0];
}

?>




表与表之间的联动②省略式

<?php
header("content-type:text/html;charset=utf-8");
//1,建立连接
$db=new mysqli("localhost","root","123","test2");
//2,判断是否有问题
!mysqli_connect_error() or die("连接失败!");
//3,写Sql语句
$sql="select * from info";
//4,执行Sql语句
$result=$db->query($sql);
//5,操作输出结果
//$row=$result->fetch_row();//单独输出一条
//显示
echo"<table width=100% border=1 cellspacing='0' cellpadding='0'>";
echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td><td>生日</td></tr>";
while($row=$result->fetch_row()){//循环输出
$sex=$row[2]?"男":"女";
$minzu=ShowNation($db,$row[3]); //注销方法ShowNation下的前两步链接和确认  把参数$db加入  传值
echo "<tr><td>$row[0]</td><td>$row[1]</td><td>$sex</td><td>$minzu</td><td>$row[4]</td></tr>";
}

echo"</table>";

function ShowNation($db,$Code)  //注销下面的前两步连接和确认  把参数$db加入  接受传值  连接少了开销小了  提高效率
{
//1,建立连接
// $db=new mysqli("localhost","root","123","test2");
// //2,判断是否有问题
// !mysqli_connect_error() or die("连接失败!");
//3,写Sql语句
$sql="select Name from nation where Code='$Code'";
//4,执行Sql语句
$result=$db->query($sql);
//5,处理显示
$getrow=$result->fetch_row();
return $getrow[0];
}

?>


效果一样:



④下拉菜单

<select>
<?php
header("content-type:text/html;charset=utf-8");
//造链接对象
$db=new mysqli("localhost","root","123","test2");
//判断是否出错
!mysqli_connect_error()or die("连接失败!");
//写sql语句
$sql="select * from nation";
//执行sql语句
$result=$db->query($sql);
//处理数据并显示
$array=$result->fetch_all();
for($i=0;$i<count($array);$i++)
{
list($Code,$Name)=$array[$i];
echo "<option value='$Code'>$Name</option>";
}
?>
</select>


显示:



⑤登陆 三个页面 登陆 处理 主页

//test7denglu.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="test7chulilogin.php" method="post">

<div>
用户名:
<input type="text" name="uid"/>
</div>
<div>
密   码:
<input type="text" name="pwd"/>
</div>
<div>

<input type="submit" name="登录"/>
</div>

</form>
</body>
</html>


//test7chulilogin.php

<?php
$uid=$_POST["uid"];
//POST必须大写否则传值不成功
$pwd=$_POST["pwd"];

//造连接对象
$db=new mysqli("localhost","root","123","test2");
//判断是否连接成功
!mysqli_connect_error() or die("连接失败!");
//写sql语句
$sql="select count(*) from login where UserName='$uid'and Password='$pwd'";
//执行sql语句
$result=$db->query($sql);
$ar=$result->fetch_row();

if ($ar[0]==1)
{
header("location:test7main.php");
}
else
{
header("location:test7denglu.php");
}

?>


//test7main.php

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
登陆成功!
</body>
</html>


显示:

输入错误跳回登陆页 test7denglu.php





输入正确跳到test7main.php页 显示:登陆成功



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: