PHP是一种广泛使用的服务器端编程语言,而MySQL是一种流行的关系型数据库。PHP操作MySQL是Web开发中常见的任务之一。这篇文章将梳理并总结PHP操作MySQL的常用代码片段,并提供两个示例说明。
连接MySQL
在PHP中,连接MySQL数据库是首要任务,可以使用以下代码完成:
<?php
$host = "localhost"; //主机名
$user = "username"; //用户名
$password = "password"; //密码
$dbname = "database_name"; //数据库名
//创建连接
$conn = mysqli_connect($host, $user, $password, $dbname);
//检查连接是否成功
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
echo "连接成功";
?>
在这个示例中,需要设置主机名、用户名、密码和数据库名。然后将这些值传递给mysqli_connect()函数,以建立与MySQL的连接。如果连接失败,将会输出错误信息并终止脚本。
执行SQL语句
当与MySQL建立连接后,就可以开始执行SQL语句了。可以使用以下代码执行SQL查询:
$sql = "SELECT * FROM table_name";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
//输出数据
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "<br>";
}
} else {
echo "0 结果";
}
mysqli_close($conn);
在这个示例中,需要将SQL查询语句写入变量$sql,并将这个变量和连接$conn传递给mysqli_query()函数以执行SQL查询。如果查询操作返回大于零的行号,则使用mysqli_fetch_assoc()函数将数据提取并进行输出。最后,mysqli_close()函数被用来关闭与MySQL的连接。
插入数据
插入数据是常见的操作,以下代码片段展示了如何使用php插入数据:
$sql = "INSERT INTO table_name (column1, column2, column3) VALUES ('$value1', '$value2', '$value3')";
if (mysqli_query($conn, $sql)) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
在这个示例中,需要设置列名和值的变量,将它们放在一个$sql变量中,然后传递它和连接$conn进行插入操作。如果插入操作成功,将会输出“新记录插入成功”语句。否则将输出错误信息并终止脚本。
示例说明
以下示例说明了如何在代码的开始处连接到MySQL数据库,如何查询数据表,并如何插入新数据。其中,数据库名为“test”,数据表名为“students”,包含三个列:“id”,“name”和“age”。
<?php
$host = "localhost"; //主机名
$user = "username"; //用户名
$password = "password"; //密码
$dbname = "test"; //数据库名
//连接到MySQL服务器
$conn = mysqli_connect($host, $user, $password, $dbname);
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
//查询students表
$sql = "SELECT id, name, age FROM students";
$result = mysqli_query($conn, $sql);
//输出查询结果
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "<br>";
}
} else {
echo "0 结果";
}
//插入新数据
$name = "Mike";
$age = 25;
$sql = "INSERT INTO students (name, age) VALUES ('$name', '$age')";
if (mysqli_query($conn, $sql)) {
echo "新数据添加成功";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
//关闭连接
mysqli_close($conn);
?>
在这个示例中,首先通过变量设置登录信息,然后连接到MySQL。接着,执行SELECT语句以查询students表,输出查询结果。最后,插入一条新数据,如果插入成功,输出“新数据添加成功”语句。最后必须关闭与MySQL的连接。
另一个示例可以是更复杂的例子,例如将查询结果存储为JSON格式,以更轻松地在Web应用程序中使用。这需要使用PHP的json_encode()函数。为了简洁起见,以下示例只输出经json_encode()函数格式化的查询结果。
<?php
$host = "localhost"; //主机名
$user = "username"; //用户名
$password = "password"; //密码
$dbname = "test"; //数据库名
//连接到MySQL服务器
$conn = mysqli_connect($host, $user, $password, $dbname);
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
//查询students表,将结果转化为json格式
$sql = "SELECT id, name, age FROM students";
$result = mysqli_query($conn, $sql);
$json_array = array();
while($row = mysqli_fetch_assoc($result)) {
$json_array[] = $row;
}
echo json_encode($json_array);
//关闭连接
mysqli_close($conn);
?>
在这个示例中,查询了students表,并使用mysqli_fetch_assoc()循环读取每条查询结果。此数据通过将每个列名和其相关的值存储在一个PHP数组$json_array中来保存。 最后,使用json_encode()函数将整个数组转换为JSON格式,最后直接使用echo输出JSON数据。 最后,关闭与MySQL的连接。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP操作MySQL的常用代码段梳理与总结 - Python技术站