语法 ```php $result = mysqli_query($connection, $query); ``` 其中: - `$connection`:这是到你的MySQL服务器的连接资源。你通常使用 `mysqli_connect()` 或者 `mysql_init()` 创建这个连接。 - `$query`:要执行的SQL查询语句。
返回值 函数执行成功时返回一个查询结果,即一个可迭代对象(如结果集),或者在某些情况下返回影响的行数或布尔值。如果发生错误,则返回FALSE,并设置相应的`mysqli_error()`返回错误信息。
示例:
# 执行查询并获取数据 假设我们已经有一个连接 `$conn` 到MySQL数据库: ```php // 创建一个包含用户和密码的数组 $credentials = array('user' => 'your_username', 'pass' => 'your_password'); $connection = new mysqli(...); // 连接到MySQL服务器(...填充你的主机名、库名等) if ($connection->connect_error) { die("连接失败: " . $connection->connect_error); } // 执行SQL查询 $result = $connection->query("SELECT * FROM users"); ``` 在这个例子中,`$result` 是一个 `mysqli_result` 对象,你可以通过循环遍历结果集获取数据: ```php while ($row = $result->fetch_assoc()) { echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "\n"; } ```
# 执行影响行数的SQL语句(如插入、更新或删除) ```php $result = $connection->query("INSERT INTO users (username, password) VALUES ('test_user', 'secure_password')"); if ($result === true) { echo "新用户已成功添加."; } else { die("Error: " . mysqli_error($connection)); } ``` 在这个例子中,如果插入成功,`mysqli_query()` 返回 `TRUE`。
注意事项:
-错误处理:
在使用`mysqli_query()`时,一定要处理可能发生的任何错误情况。这通常通过检查返回的值是否为`FALSE`或者通过调用`mysqli_error()`来实现。-安全:
在编写SQL语句时避免注入攻击,可以使用预处理语句或参数化查询。 ```php $result = $connection->query("INSERT INTO users (username, password) VALUES (?, ?)", $test_user_name, $secure_password); ``` 通过这种方式,你不仅可以安全地执行SQL查询,还可以更好地控制查询内部的变量绑定和错误处理