1.查詢php
把昨天的做業(查詢一張數據表,以表格的形式顯示)做爲一個例子sql
思路就是鏈接數據庫,而後讀取SQL語句而且根據條件遍歷輸出數據庫
<body>數組
<table border="1px" cellpadding="0px" cellspacing="0px" width="100%"> //外層表結構post
<tr align="center"> //本身寫好表頭(字段名)
<td>學號</td>
<td>姓名</td>
<td>性別</td>
<td>出生日期</td>
</tr>fetch
<?php
$db = new MySQLi("localhost","root","","test"); // 鏈接數據庫
$db->query("set names UTF8"); //設置字符編碼編碼
$sql = "select * from teacher"; //讀取SQL語句
$result = $db->query($sql);
while($arr = $result->fetch_row()) //循環,抓取每行的數據,直到沒有數據
{
echo "<tr align='center'> <td>{$arr[0]}</td> //輸出數據表中的每一個字段內容
<td>{$arr[1]}</td>
<td>{$arr[2]}</td>
<td>{$arr[3]}</td></tr>";
}
?>
</table>spa
</body>3d
2.數據刪除操做code
<body>
<h1>學生表查詢</h1>
<table cellpadding="0px" cellspacing="0px" border="1px" align="center" width="100%">
<tr>
<td>學號</td>
<td>姓名</td>
<td>性別</td>
<td>生日</td>
<td>班級</td>
<td>操做</td>
</tr>
<?php
$db=new MySQLi("localhost","root","","test");
$sql="select * from student";
$result=$db->query($sql);
$attr=$result->fetch_all();
foreach($attr as $v)
{ echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td> //和查詢同樣,這裏多出來一個定義字段,做爲刪除功能鍵,定義爲<a>超連接標籤
<td><a href='dele.php?Sno={$v[0]}' onclick=\"return confirm('你肯定刪除嗎')\">刪除</a></td> //同時給刪除鍵一個點擊事件,這樣會先執行點擊事件,後完成提交跳轉,添加了一個確認事件,爲了防止不通過用戶確認而形成的誤刪現象。
</tr>";} //在提交刪除操做時,同時提交了一個類get操做(地址欄顯示)的數據主鍵值,使得提交時能辨識出須要刪除的具體是哪一個數據
?>
</table><br />
</body>
效果以下圖
當點擊刪除時
接下來就是寫後臺刪除的PHP頁面
<?php
$r1=$_GET["Sno"]; //經過get方式獲取到了刪除頁面傳來的主鍵對應的值
$db=new MySQLi("localhost","root","","test"); //連接數據庫
$sql="delete from student where Sno={$r1}"; //讀取sql語句
if($db->query($sql)){
header("location:check.php"); //刪除成功後跳轉至原來的界面,1. header方法,此方法問題會出如今,若是不是跳轉同級文件下的時候出錯
echo "<script>window.location.href='check.php';</script>" //2.JS跳轉方式
echo"<script>window.open('check.php','_self',)</script>" //3.JS跳轉方式 3種方式都能成功跳轉。
}
?>
3.添加數據(和前面的註冊基本一致的作法)
第一步:增長一個添加的提交或超連接按鈕
<a href="add.php"><input type="submit" name="add" value="添加學生"/></a>
第二步:寫add添加的頁面
<body>
<h1 align="center">學生信息添加</h1>
<div style=" background-color:#0CC" align="center">
<form action="tianjia.php" method="post">
<div>學號:<input type="text" name="Sno" /></div><br />
<div>姓名:<input type="text" name="Sname" /></div><br />
<div>男<input type="radio" name="Ssex" /> 女<input type="radio" name="Ssex"</div><br />
<div>生日:<input type="date" name="birthday"/></div><br />
<div>班級<input type="text" name="class" /></div><br />
<input type="submit" value="提交"/>
</form>
<div>
</body>
第三步:寫出處理添加數據操做的php頁面
<?php
$id=$_POST["Sno"];
$name=$_POST["Sname"];
$sex=$_POST["Ssex"];
$birthday=$_POST["birthday"];
$class=$_POST["class"];
$db=new MySQLi("localhost","root","","test");
$sql="insert into student values('{$id}','{$name}','{$sex}','{$birthday}','{$class}')";
if($db->query($sql)){
echo "學生{$name}信息添加成功";
//header("location:check.php");
echo"<script> window.open('check.php','_self','')</script>";
}
else{
echo "學生信息添加失敗".$db_error;
}
?>
4.修改數據表
若是數據表中顯示的內容和咱們想要顯示的結果不一樣,好比性別在數據表中儲存的是0和1,可是咱們想要顯示的是男和女
還有就是連有外鍵的數據表,顯示的內容中只是一個外鍵的字段名,咱們就要進行修改
例以下面
<body><h1>顯示info信息</h1><table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代號</td> <td>姓名</td> <td>性別</td> <td>民族</td> <td>生日</td> <td>操做</td> </tr> <?php $db = new MySQLi("localhost","root","123","mydb"); $sql = "select * from info"; $result = $db->query($sql); $arr = $result->fetch_all(); foreach($arr as $v) { //修改性別 $sex = $v[2]?"男":"女"; //修改民族 $sql1 = "select name from nation where code='{$v[3]}'"; //讀取關聯表的數據 $r1 = $db->query($sql1); //存入變量集中 $a1 = $r1->fetch_row(); //用數組儲存抓取的數據 echo "<tr> <td>{$v[0]}</td> <td>{$v[1]}</td> <td>{$sex}</td> //將修改後的直接存在變量裏輸出顯示 <td>{$a1[0]}</td> //直接替換成關聯表中的數據 <td>{$v[4]}</td> <td><a href='del.php?code={$v[0]}' onclick=\"return confirm('確認刪除麼?')\">刪除</a></td> </tr>"; } ?> </table></body>