1. 程式人生 > 實用技巧 >php與html混寫案例

php與html混寫案例

如下html表單部分:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>學生成績錄入</title>
</head>
<body>
  <h1>學生成績錄入</h1>
  <form action="index.php" method="post">

    編號: <input type="text" name="stu_number"><br>
    姓名: <input type="text" name="stu_name"><br>
    語文: <input type="text" name="chinese"><br>
    數學: <input type="text" name="math"><br>
    英語: <input type="text" name="english"><br><br>

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

</body>
</html>

  

如下php處理部分:

<?php

	// 接收POST表單傳過來的資料
	$stu_number = $_POST['stu_number'];
	$stu_name = $_POST['stu_name'];
	$chinese = $_POST['chinese'];
	$math = $_POST['math'];
	$english = $_POST['english'];

	//連線接資料庫
	$server = 'localhost';
	$username = 'root';
	$password = 'root';
	$dbname = 'ceshi';
	$port = '3306';
	$conn =  new mysqli($server,$username,$password,$dbname,$port);
	if ($conn->connect_error) {
		die('連線資料庫失敗'.$conn->connect_error);
	}
	//sql語句
	$sql = "INSERT INTO `student` VALUES (NULL,$stu_number,'$stu_name',$chinese,$math,$english)";
	//執行sql語句
	if (!$conn->query($sql)) {
		echo '新增失敗,原因:'.$conn->error;
		exit;
	}else
		echo '新增到資料庫成功!<br>';
	//查詢資料
	$sql = "SELECT * FROM student";
	$res = $conn->query($sql);
	$stu_list = array();
	  while ($row = $res->fetch_assoc()) {       
        $stu_list[] = $row;
    }

    //print_r($stu_list);
	//require 'table.html'; //最好把下面的html程式碼用require引入進來
	
 ?>
 <!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title></title>
</head>
<body>
	<h1>學生成績如下:</h1>
	<table style="text-align: center;" border="1" width="600">
	<tr>
		<th>ID</th>
		<th>學生編號</th>
		<th>學生姓名</th>
		<th>語文成績</th>
		<th>數學成績</th>
		<th>英語成績</th>
	</tr>
	<!-- 下面是php替代語法,方便閱讀 -->
	<?php foreach($stu_list as $stu) : ?>
	<tr>
		<td><?php echo $stu['id']; ?></td>
		<td><?php echo $stu['stu_number']; ?></td>
		<td><?php echo $stu['stu_name']; ?></td>
		<td><?php echo $stu['chinese']; ?></td>
		<td><?php echo $stu['math']; ?></td>
		<td><?php echo $stu['english']; ?></td>
	</tr>
	<?php endforeach; ?>
	
</table>

</body>
</html>

 

效果圖:

以上小案例新手要理解的地方:

1. php與html混寫的話,訪問檔名必須是.php後戳的,html裡面寫php程式碼,直接訪問html檔案沒用,因為html不解析php程式碼。

2. 從資料庫查詢到的資料為了方便使用,要封裝成二維陣列,如下位置這裡:

$stu_list = array();//建立個空陣列
$stu_list[] = $row;//把一維陣列資料,封裝到空陣列,變成二維陣列 方便取值使用

3. php頁面如果存在大量的html檔案最好單獨寫一個html頁面,用 require引入到php檔案。

4. html裡面php替代語法 foreach的使用要熟練掌握。