事前にデータベースにいくつかのデータを追加します
データを追加する
<meta charset="utf-8">
<?php
// 链接数据库:需要链接的服务器,用户名和密码
mysql_connect("localhost", "root", 123456);
// 选择哪个数据库
mysql_selectdb("xiaobai");
// 设置字符集
mysql_query("SET NAMES UTF8");
// 向对应的数据库插入数据
$sql = "INSERT INTO form VALUES('小李',17,'男',1358995225,'[email protected]',88,'河北石家庄')";
//查询数据库中的数据
//$sql = "SELECT * FROM form";
//执行命令
mysql_query($sql);
?>
このとき、ページがリクエストされるたびに、データがデータベースに追加されます
mysql_query()関数はMySQLクエリを実行します
フローチャート
データベース内のデータをクエリする
<meta charset="utf-8">
<?php
// 链接数据库:需要链接的服务器,用户名和密码
mysql_connect("localhost", "root", 123456);
// 选择哪个数据库
mysql_selectdb("xiaobai");
// 设置字符集
mysql_query("SET NAMES UTF8");
// 向对应的数据库插入数据
//$sql = "INSERT INTO form VALUES('小李',17,'男',1358995225,'[email protected]',88,'河北石家庄')";
//查询数据库中的数据
$sql = "SELECT * FROM form";
//执行命令
$result = mysql_query($sql);
echo $result;
print_r($result);
?>
現時点では、echoとprint_rは基本型の値と配列を出力し、$ resultの戻り結果は基本型の値でも配列でもないため、この$ resultの出力はエラーです。
したがって、結果を配列に変換するには
mysql_fetch_array()関数は、結果セットから連想配列、数値配列、またはその両方として行を取得します
$arr = mysql_fetch_array($result);
print_r($arr);
echo "<br/>";
配列の内容をすべて出力したいのですが、返されるのはデータです。上記のコマンドを繰り返し実行したところ、
一度に1つのアイテムを印刷します。これは間違いなく不合理です。解決策は、whileループを使用してすべてのデータをトラバースすることです。
while($arr = mysql_fetch_array($result)) {
print_r($arr);
echo "<br/>";
}
データはテーブルにレンダリングされます
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<style>
table,
td,
th {
border-collapse: collapse;
line-height: 30px;
border: 1px solid #333;
padding: 0 20px;
}
</style>
<body>
<?php
// 链接数据库:需要链接的服务器,用户名和密码
mysql_connect("localhost", "root", 123456);
//选择哪个数据库
mysql_selectdb("xiaobai");
// 设置字符集
mysql_query("SET NAMES UTF8");
// 向对应的数据库插入数据
$sql = "SELECT * FROM form";
$result = mysql_query($sql);
?>
<table>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>电话</th>
<th>邮箱</th>
<th>成绩</th>
<th>地址</th>
</tr>
<?php
while ($arr = mysql_fetch_array($result)) { ?>
<tr>
<td><?php print_r($arr['name']) ?></td>
<td><?php print_r($arr['age']) ?></td>
<td><?php print_r($arr['sex']) ?></td>
<td><?php print_r($arr['tel']) ?></td>
<td><?php print_r($arr['email']) ?></td>
<td><?php print_r($arr['score']) ?></td>
<td><?php print_r($arr['adress']) ?></td>
</tr>
<?php } ?>
</table>
</body>
</html>
見つかった結果の数を返します
$num = mysql_num_rows($result);