PDO實(shí)現(xiàn)學(xué)生管理系統(tǒng)
這里實(shí)現(xiàn)一個(gè)簡(jiǎn)單的學(xué)生管理系統(tǒng),供大家參考,具體內(nèi)容如下
需要建立如下文件:
- index.php
- menu.php //菜單欄
- add.php //添加數(shù)據(jù)
- edit.php // 編輯數(shù)據(jù)
- action.php // 添加,刪除,編輯的實(shí)現(xiàn)
分別寫一下每個(gè)文件的代碼:
menu.php:
<html> <h2>學(xué)生信息管理</h2> <a href="index.php" rel="external nofollow" >瀏覽學(xué)生</a> <a href="add.php" rel="external nofollow" >增加學(xué)生</a> <hr> </html>
index.php
<html>
<head>
<meta charset="UTF-8">
<title>學(xué)生信息管理系統(tǒng)</title>
</head>
<script>
function doDel(id){
if(confirm("是否要?jiǎng)h除")){
window.location='action.php?action=del&id='+id;
}
}
</script>
<body>
<center>
<?php include("menu.php");?>
<h3>瀏覽學(xué)生信息</h3>
<table width="600" border="1">
<tr>
<th>ID</th>
<th>姓名</th>
<th>姓別</th>
<th>年齡</th>
<th>班級(jí)</th>
<th>操作</th>
</tr>
<?php
//1. 連接數(shù)據(jù)庫
try{
$pdo = new PDO("mysql:host=localhost;dbname=myapp;", "root", "");
}catch(PDOException $e){
die("fail to connect db".$e->getMessage());
}
//2. 執(zhí)行數(shù)據(jù)庫,并解析遍歷
$sql = "SELECT * FROM users";
foreach($pdo->query($sql) as $val){
echo "<tr>";
echo "<td>{$val['id']}</td>";
echo "<td>{$val['name']}</td>";
echo "<td>{$val['sex']}</td>";
echo "<td>{$val['age']}</td>";
echo "<td>{$val['class']}</td>";
echo "<td>
<a href='javascript:doDel({$val['id']})'>刪除</a>
<a href='edit.php?id={$val['id']}'>修改</a>
</td>";
echo "</tr>";
}
?>
</table>
</center>
</body>
</html>
add.php
<html>
<head>
<meta charset="UTF-8">
<title>學(xué)生信息管理系統(tǒng)</title>
</head>
<body>
<center>
<?php include("menu.php");?>
<h3>增加學(xué)生信息</h3>
<form action="action.php?action=add" method="post">
<table>
<tr>
<td>姓名</td>
<td><input type="text" name="name"/></td>
</tr>
<tr>
<td>姓別</td>
<td>
<input type="radio" name="sex" value="m"/>男
<input type="radio" name="sex" value="w"/>女
</td>
</tr>
<tr>
<td>年齡</td>
<td><input type="text" name="age"/></td>
</tr>
<tr>
<td>班級(jí)</td>
<td><input type="text" name="class"/></td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" value="增加"/>
<input type="submit" value="重置"/>
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
edit.php
<html>
<head>
<meta charset="UTF-8">
<title>學(xué)生信息管理系統(tǒng)</title>
</head>
<body>
<center>
<?php include("menu.php");
//獲取修改信息
//1. 連接數(shù)據(jù)庫
try{
$pdo = new PDO("mysql:host=localhost;dbname=myapp;", "root", "");
}catch(PDOException $e){
die("fail to connect db".$e->getMessage());
}
//2. 拼裝sql語句,取出信息
$sql = "SELECT * FROM users WHERE id=".$_GET['id'];
$stmt = $pdo->query($sql);
if($stmt->rowCount() > 0){
$stu = $stmt->fetch(PDO::FETCH_ASSOC); //解析數(shù)據(jù)
}else{
die("沒有修改的信息");
}
?>
<h3>修改學(xué)生信息</h3>
<form action="action.php?action=edit" method="post">
<!-- 以隱藏域的方式添加id -->
<input type="hidden" name="id" value="<?php echo $stu['id']; ?>">
<table>
<tr>
<td>姓名</td>
<td><input type="text" name="name" value="<?php echo $stu['name'];?>"/></td>
</tr>
<tr>
<td>姓別</td>
<td>
<input type="radio" name="sex" value="m" <?php echo ($stu['sex']==
"m")? "checked": ""; ?>/>男
<input type="radio" name="sex" value="w" <?php echo ($stu['sex']==
"w")? "checked": ""; ?>/>女
</td>
</tr>
<tr>
<td>年齡</td>
<td><input type="text" name="age" value="<?php echo $stu['age'];?>"/></td>
</tr>
<tr>
<td>班級(jí)</td>
<td><input type="text" name="class" value="<?php echo $stu['class'];?>"/></td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" value="修改"/>
<input type="submit" value="重置"/>
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
action.php
<?php
//1. 連接數(shù)據(jù)庫
try{
$pdo = new PDO("mysql:host=localhost;dbname=myapp;", "root", "");
}catch(PDOException $e){
die("fail to connect db".$e->getMessage());
}
//2. 通過action的值做相應(yīng)的操作
switch($_GET['action']){
case "add": //增加操作
$name = $_POST['name'];
$sex = $_POST['sex'];
$age = $_POST['age'];
$class = $_POST['class'];
$sql = "INSERT INTO users VALUES (null, '{$name}','{$sex}', '{$age}', '{$class}')";
$rw = $pdo->exec($sql);
if($rw > 0){
echo "<script>alert('增加成功'); window.location='index.php'</script>";
}else{
echo "<script>alert('增加失敗'); window.history.back()</script>";
}
break;
case "del":
$id = $_GET['id'];
$sql = "DELETE FROM users WHERE id={$id}";
$pdo->exec($sql);
header("location:index.php");
break;
case "edit":
$name = $_POST['name'];
$sex = $_POST['sex'];
$age = $_POST['age'];
$class = $_POST['class'];
$id = $_POST['id'];
$sql = "UPDATE users SET name='{$name}',sex='{$sex}',age={$age},class={$class}
WHERE id={$id}";
$rw = $pdo->exec($sql);
if($rw > 0){
echo "<script>alert('修改成功'); window.location='index.php'</script>";
}else{
echo "<script>alert('修改失敗'); window.history.back()</script>";
}
break;
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Mac版PhpStorm之XAMPP整合apache服務(wù)器配置的圖文教程詳解
選擇在PhpStorm集成apache服務(wù)器,但是很多朋友不知道是如何操作的,下面小編分步驟通過圖文的形式給大家介紹Mac版PhpStorm之XAMPP整合apache服務(wù)器配置的教程,感興趣的朋友一起看看吧2016-10-10
Laravel框架控制器的request與response用法示例
這篇文章主要介紹了Laravel框架控制器的request與response用法,結(jié)合實(shí)例形式分析了Laravel框架控制器的request與response發(fā)送請(qǐng)求及響應(yīng)請(qǐng)求的相關(guān)操作技巧,需要的朋友可以參考下2019-09-09
Zend Framework教程之Zend_Helpers動(dòng)作助手ViewRenderer用法詳解
這篇文章主要介紹了Zend Framework教程之Zend_Helpers動(dòng)作助手ViewRenderer用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Zend_Helpers動(dòng)作助手ViewRenderer的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-07-07
Laravel5.1 框架數(shù)據(jù)庫查詢構(gòu)建器用法實(shí)例詳解
這篇文章主要介紹了Laravel5.1 框架數(shù)據(jù)庫查詢構(gòu)建器用法,結(jié)合實(shí)例形式詳細(xì)分析了laravel5.1框架查詢構(gòu)造器相關(guān)原理、使用技巧與操作注意事項(xiàng),需要的朋友可以參考下2020-01-01
php+ajax實(shí)現(xiàn)無刷新動(dòng)態(tài)加載數(shù)據(jù)技術(shù)
無刷新功能我們用到很多很多的,下面我就來給各位介紹一個(gè)實(shí)例,就是實(shí)現(xiàn)php+ajax實(shí)現(xiàn)無刷新滾屏加載數(shù)據(jù),例子非常的簡(jiǎn)單大家只要按流程來操作就可以了哦。2015-04-04
php 人員權(quán)限管理(RBAC)實(shí)例(推薦)
下面小編就為大家?guī)硪黄猵hp 人員權(quán)限管理(RBAC)實(shí)例(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05
PHP imagegrabscreen和imagegrabwindow(截取網(wǎng)站縮略圖)的實(shí)例代碼
PHP5.2.2以上版本的GD庫實(shí)現(xiàn)了兩個(gè)截屏函數(shù) imagegrabscreen 和 imagegrabwindow ,分別用于截取整個(gè)屏幕和截取某個(gè)窗口(同ALT+PrintScreen)的屏幕2013-11-11

