PHP MySQLi 增删改查

最近几天,我们一直在学习利用MySQLi访问数据库并对其中的数据进行操作。今天给大家展现一个完整的例子,我们来制作一个新闻发布系统,利用MySQLi来操作数据库,实现对新闻的添加、修改、删除、查询等基本功能。(以下代码分为前端显示和后台php处理代码,中间用空行隔开,注意区分)

1、登陆页面:这由本公司内部人员通过员工号和身份证号才能登陆,代码如下:

//前端显示部分

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<body>

<h2>管理员登陆</h2>

<form action="dlyz.php" method="post">

<div>用户名:<input type="text" name="user" value="请输入您的工号" /></div>

<br />

<div>密&nbsp;&nbsp;码:<input type="password" name="psd" /></div>

<br />

<input type="submit" value="登录" />

<input type="submit" value="注册新用户" formaction="zhuc.php"/>

</form>

</body>

</html>

//php代码对提交登陆的信息进行处理

<?php

$user = $_POST["user"];

$psd = $_POST["psd"];

//造对象

$db = new MySQLi("localhost","root","","newssystem");

//判断是否出错

!mysqli_connect_error() or die("连接失败!!");

//写sql语句

$sql = "select psd from yonghu where user='{$user}'";

//执行SQL语句

$result = $db-> query($sql);

$v = $result->fetch_row();

if($psd==$v[0])

{

header("location:fabuxinwen.php");

}

else

{

echo"您输入的用户名或密码不正确,请重新输入!!";

}

2、注册页面:公司/报社来了新员工,只有注册后才能登陆

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<body>

<h2>欢迎注册</h2>

<body>

<form action="zhucyz.php"method="post">

<div>用户名:<input type="text" name="user" value="请输入您的工号"/></div><br />

<div>密&nbsp;&nbsp;码:<input type="password" name="psd" /></div><br />

<input type="submit" value="提交" />

</form>

</body>

</html>

<?php

$user = $_POST["user"];

$psd = $_POST["psd"];

//造对象

$db = new MySQLi("localhost","root","","newssystem");

//判断是否出错

!mysqli_connect_error() or die("连接失败!!");

//写sql语句

$sql = "insert into yonghu values('{$user}','{$psd}')";

//执行SQL语句

$result = $db-> query($sql);

if($result)

{

header("location:dl.php");

}

else

{

echo"很抱歉,注册失败!!";

}

3、登陆进去以后,是发布新闻页面,点击提交按钮进行提交保存到已经建立好的数据库,点击查看按钮进行查看确认

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<body>

<div >

<h2>发布新闻</h2>

<form method="post">

<input type="hidden" name="newsid"/>

<table >

<tr>

<td >标题:</td><td><input type="text" name="title" /></td>

</tr>

<tr>

<td >作者:

</td><td><input type="text" name="Author" /></td>

</tr>

<tr>

<td >来源:</td><td><input type="text" name="source"/></td>

</tr>

<tr>

<td >内容:</td>

<td><textarea cols="auto" rows="auto" name="content"></textarea></td>

</tr>

</table><br />

<?php

$time = date('y-m-d h:i:s');

echo "<input type=\"hidden\" name=\"time\" value=\"{$time}\"/>";

?>

<input type="submit" value="提交" formaction="tijiao.php"/>

<input type="submit" value="查看" formaction="chakan.php"/>

</form>

</div>

</body>

</html>

<?php

$title = $_POST["title"];

$Author = $_POST["Author"];

$source = $_POST["source"];

$content = $_POST["content"];

//造对象

$db = new MySQLi("localhost","root","","newssystem");

//判断是否出错

!mysqli_connect_error() or die("添加失败!!");

//写sql语句

$sql = "insert into news(title,Author,source,content) values('{$title}','{$Author}','{$source}','{$content}')";

//执行SQL语句

$result = $db-> query($sql);

if($result)

{

header("location:fabuxinwen.php");

}

else

{

echo"很抱歉,添加失败!!";

}

4、查看页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<body>

<table width="70%" cellpadding="0" cellspacing="0" >

<tr>

<td>编号</td>

<td>标题</td>

<td>作者</td>

<td>来源</td>

<td>日期</td>

<td>删除</td>

<td>修改</td>

</tr>

<?php

$db=new mysqli("localhost","root","","newssystem");

!mysqli_connect_error() or die("连接错误");

$sql="select * from news";

$result=$db->query($sql);

while($attr=$result->fetch_row())

{

echo "

<tr>

<td>{$attr[0]}</td>

<td>{$attr[1]}</td>

<td>{$attr[2]}</td>

<td>{$attr[3]}</td>

<td>{$attr[5]}</td>

<td><a onclick=\" return confirm('确定删除')\" href='scchuli.php?news>删除</a></td>

<td><a href='xiugai.php?news>修改</a></td>

</tr>

";

}

?>

</table>

</body>

</html>

5、在查看页面可以进行相关内容的修改和删除

//修改:在点击修改按钮后,会跳转到修改页面,此时会显示出之前已经发布的内容、标题等相关内容

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

</head>

<body>

<?php

$id = $_GET["newsid"];

$db=new mysqli("localhost","root","","newssystem");

!mysqli_connect_error() or die("连接错误");

$sql="select * from news where news";

$result=$db->query($sql);

$attr=$result->fetch_row();

?>

<div >

<h2>修改新闻</h2>

<form action="xgchuli.php" method="post">

<input type="hidden" name="newsid" <?php echo "value='{$attr[0]}'";?>/>

<table >

<tr>

<td >标题:</td><td><input type="text" name="title" <?php echo "value='{$attr[1]}'";?>/></td>

</tr>

<tr>

<td >作者:

</td><td><input type="text" name="Author" <?php echo "value='{$attr[2]}'";?>/>

</td>

</tr>

<tr>

<td >来源:</td><td><input type="text" name="source" <?php echo "value='{$attr[3]}'";?>/>

</td>

</tr>

<tr>

<td >内容:</td>

<td><textarea cols="auto" rows="auto" name="content"><?php echo "{$attr[4]}";?>

</textarea></td>

</tr>

</table><br />

<?php

$time = date('y-m-d h:i:s');

echo "<input type=\"hidden\" name=\"time\" value=\"{$time}\"/>";

?>

<div><a href="chakan.php"><input type="button" title="查看" value="查看" /></a><input type="submit" title="修改" value="修改"/>

</div>

</form>

</body>

</html>

<?php

$newsid"];

$title=$_POST["title"];

$Author=$_POST["Author"];

$source=$_POST["source"];

$content=$_POST["content"];

$time=$_POST["time"];

$db = new MySQLi("localhost","root","","newssystem");

!mysqli_connect_error() or die("连接失败");

$sql="update news set title='{$title}',Author='{$Author}',source='{$source}',content='{$content}',time='{$time}' where news ";

$result=$db->query($sql);

if ($result)

{

header("location:chakan.php");

}

else

{

echo "修改失败";

}

//删除:如果要删除一条新闻,在点击删除按钮之后,不会跳转到任何前台显示页面,只会在后台通过php代码进行相关处理

<?php

$newsid"];

$db=new mysqli("localhost","root","","newssystem");

!mysqli_connect_error() or die("连接失败");

$sql="delete from news where news";

$result=$db->query($sql);

if ($result)

{

header("location:chakan.php");

}

else

{

echo "删除失败";

}

6、修改完成之后,点击页面下方的修改按钮进行提交,在这里也不会有相关的前端显示页面,只是在后台利用相关php代码进行相应处理,成功后返回发布新闻页面

<?php

$title = $_POST["title"];

$Author = $_POST["Author"];

$source = $_POST["source"];

$content = $_POST["content"];

//造对象

$db = new MySQLi("localhost","root","","newssystem");

//判断是否出错

!mysqli_connect_error() or die("添加失败!!");

//写sql语句

$sql = "insert into news(title,Author,source,content) values('{$title}','{$Author}','{$source}','{$content}')";

//执行SQL语句

$result = $db-> query($sql);

if($result)

{

header("location:fabuxinwen.php");

}

else

{

echo"很抱歉,添加失败!!";

}