PDO實現學生管理系統
阿新 • • 發佈:2020-03-24
這裡實現一個簡單的學生管理系統,供大家參考,具體內容如下
需要建立如下檔案:
- index.php
- menu.php //選單欄
- add.php //新增資料
- edit.php // 編輯資料
- action.php // 新增,刪除,編輯的實現
分別寫一下每個檔案的程式碼:
menu.php:
<html> <h2>學生資訊管理</h2> <a href="index.php" rel="external nofollow" >瀏覽學生</a> <a href="add.php" rel="external nofollow" >增加學生</a> <hr> </html>
index.php
<html> <head> <meta charset="UTF-8"> <title>學生資訊管理系統</title> </head> <script> function doDel(id){ if(confirm("是否要刪除")){ window.location='action.php?action=del&id='+id; } } </script> <body> <center> <?php include("menu.php");?> <h3>瀏覽學生資訊</h3> <table width="600" border="1"> <tr> <th>ID</th> <th>姓名</th> <th>姓別</th> <th>年齡</th> <th>班級</th> <th>操作</th> </tr> <?php //1. 連線資料庫 try{ $pdo = new PDO("mysql:host=localhost;dbname=myapp;","root",""); }catch(PDOException $e){ die("fail to connect db".$e->getMessage()); } //2. 執行資料庫,並解析遍歷 $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>學生資訊管理系統</title> </head> <body> <center> <?php include("menu.php");?> <h3>增加學生資訊</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>班級</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>學生資訊管理系統</title> </head> <body> <center> <?php include("menu.php"); //獲取修改資訊 //1. 連線資料庫 try{ $pdo = new PDO("mysql:host=localhost;dbname=myapp;",""); }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); //解析資料 }else{ die("沒有修改的資訊"); } ?> <h3>修改學生資訊</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>班級</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. 連線資料庫 try{ $pdo = new PDO("mysql:host=localhost;dbname=myapp;",""); }catch(PDOException $e){ die("fail to connect db".$e->getMessage()); } //2. 通過action的值做相應的操作 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; }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。