阿里巴巴做公司网站,怎样做网站流量,佛山债优化,网站模板 自适应文章目录 PHP操作1. mysqli_connect() 连接数据库2. mysqli_close() 关闭数据库3. mysqli_num_rows 查询结果集中的行数4. mysqli_select_db 选择数据库的函数5. mysqli_query 常规的插入查找等6. header( )7.防止 sql 注入 PHP操作
1. mysqli_connect() 连接数据库
2. mysql… 文章目录 PHP操作1. mysqli_connect() 连接数据库2. mysqli_close() 关闭数据库3. mysqli_num_rows 查询结果集中的行数4. mysqli_select_db 选择数据库的函数5. mysqli_query 常规的插入查找等6. header( )7.防止 sql 注入 PHP操作
1. mysqli_connect() 连接数据库
2. mysqli_close() 关闭数据库
?php
$servername localhost; // MySQL 服务器地址
$username root; // 数据库用户名
$password password; // 数据库密码
$dbname mydatabase; // 数据库名// 建立与 MySQL 数据库服务器的连接
$conn mysqli_connect($servername, $username, $password, $dbname);// 检查连接是否成功
if (!$conn) {die(连接失败: . mysqli_connect_error());
}echo 连接成功;// 在这里可以执行数据库操作// 关闭与 MySQL 数据库服务器的连接
mysqli_close($conn);
?
mysqli_num_rows() 是 PHP 中用于获取查询结果中行数的函数它是 MySQLiMySQL Improved Extension扩展库的一部分。MySQLi 是 PHP 提供的一个强大且面向对象的扩展用于与 MySQL 数据库进行交互。
mysqli_num_rows 函数的语法如下
mysqli_num_rows($result);其中
$result 是一个结果对象它表示从数据库中返回的查询结果集。
3. mysqli_num_rows 查询结果集中的行数
函数返回查询结果集中的行数即结果集中包含多少条记录。如果查询失败或返回的结果集为空则该函数返回 0。
// 创建数据库连接
$connection mysqli_connect(localhost, username, password, database);// 检查连接是否成功
if (mysqli_connect_errno()) {die(连接数据库失败: . mysqli_connect_error());
}// 执行查询
$query SELECT * FROM users;
$result mysqli_query($connection, $query);// 获取查询结果中的行数
$num_rows mysqli_num_rows($result);echo 查询结果中共有 {$num_rows} 条记录\n;// 关闭数据库连接
mysqli_close($connection);
4. mysqli_select_db 选择数据库的函数
是 PHP 中用于选择数据库的函数。它用于在连接到 MySQL 数据库后选择要操作的特定数据库。
bool mysqli_select_db ( mysqli $link , string $dbname )参数说明
$link必需一个有效的 MySQL 连接对象。$dbname必需要选择的数据库名称。
返回值
如果选择数据库成功则返回 true。如果选择数据库失败则返回 false。 5. mysqli_query 常规的插入查找等
是 PHP 中用于执行 SQL 查询的函数它是 MySQLiMySQL Improved Extension扩展库的一部分。MySQLi 是 PHP 提供的一个强大且面向对象的扩展用于与 MySQL 数据库进行交互。
mysqli_query 函数的语法如下
mysqli_query($connection, $query);其中
$connection 是一个数据库连接对象它表示与 MySQL 数据库建立的连接。通常通过 mysqli_connect 或 mysqli_init 函数创建连接对象。$query 是要执行的 SQL 查询语句。
mysqli_query 函数执行指定的 SQL 查询并返回一个结果对象或布尔值具体取决于查询的类型和执行结果。
// 创建数据库连接
$connection mysqli_connect(localhost, username, password, database);// 检查连接是否成功
if (mysqli_connect_errno()) {die(连接数据库失败: . mysqli_connect_error());
}// 执行查询
$query SELECT * FROM users;
$result mysqli_query($connection, $query);// 处理查询结果
if ($result) {// 读取结果集中的数据while ($row mysqli_fetch_assoc($result)) {echo $row[username] . \n;}
} else {echo 查询失败: . mysqli_error($connection);
}// 关闭数据库连接
mysqli_close($connection);
6. header( )
echo scriptwindow.location.href ../index.php;/script;
// 上面的语句可以替代下面的转向
header(Location: ../index.php);产生原因由于想在进行数据库的读写之后从 php 页面转到前端页面使用 header() 不会执行他前面的 echo 语句故此
7.防止 sql 注入
?php
include_once ../variable.php;$conn mysqli_connect($mysql_hostname, $mysql_username, $mysql_password, $mysql_database);
if(!$conn){echo 数据库.$mysql_database.连接失败;exit();
}
else echo 连接数据库.$mysql_database.成功;if(isset($_POST[text]) isset($_POST[input])){echo scriptalert(提交);/script;$cont1 mysqli_real_escape_string($conn, $_POST[text]);$cont2 mysqli_real_escape_string($conn, $_POST[input]);$sql INSERT INTO essy (column1, column2) VALUES (?, ?);$stmt mysqli_prepare($conn, $sql);mysqli_stmt_bind_param($stmt, ss, $cont1, $cont2);$result mysqli_stmt_execute($stmt);if(!$result){echo 插入数据时发生错误 . mysqli_error($conn);}else{echo 插入数据成功;}
}
else{echo scriptalert(提交错误);/script;
}mysqli_close($conn);
? mysqli_real_escape_string(): 函数的作用就是将字符串中的特殊字符进行转义使其成为合法的 SQL 字符串。转义后的字符串可以安全地插入到 SQL 查询语句中而不会引发 SQL 注入问题。该函数接受两个参数第一个是数据库连接对象第二个是要转义的字符串。函数会返回转义后的字符串。mysqli_prepare() : 该函数用于准备 SQL 查询语句返回一个 mysqli_stmt 对象。mysqli_prepare() 接受两个参数第一个参数是数据库连接对象第二个参数是要执行的 SQL 查询语句参数使用占位符 ? 表示这种格式可以提高执行查询的效率并提高应用程序的安全性。
为后面的 mysqli_stmt_bind_param( ) mysqli_stmt_execute() 做准备 mysqli_stmt_bind_param( ) : 用于绑定参数到准备好的查询语句中。它接受三个参数第一个参数是 mysqli_stmt 对象第二个参数是参数类型的字符串第三个参数是要绑定的参数第二个参数类型字符串类型s整数类型i双精度浮点类型d布尔类型b
第二个参数是根据第三个要绑定的来确定的对应的是相应数据库中的类型因此易知第三个三数可以是多个值即对应表中的不同列只是绑定并没有进行插入等操作绑定之后通过 mysqli_stmt_execute() 来执行 sql 语句中的操作
具体根据 mysqli_prepare() 中的 sql 进行的 mysqli_stmt_execute() 用于执行准备好的查询语句。它接受一个参数即 mysqli_stmt 对象返回布尔值以上四者搭配使用一定程度上减小了一点点 sql 注入