PHP 데이터베이스 쿼리 팁: mysqli_query 함수를 사용하여 SQL 쿼리를 수행하는 방법
PHP 애플리케이션을 개발할 때 데이터베이스와의 상호 작용은 매우 중요한 부분입니다. 쿼리 작업을 위해 PHP는 SQL 문을 실행하는 몇 가지 내장 함수를 제공합니다. 이 기사에서는 개발자가 데이터베이스 쿼리 작업을 더 잘 수행할 수 있도록 mysqli_query 함수를 사용하는 방법에 중점을 둘 것입니다.
1. mysqli_query 함수 소개
mysqli_query 함수는 SQL 쿼리문을 실행하는 데 사용되는 PHP 내장 함수입니다. 기본 구문은 다음과 같습니다.
mysqli_query($连接对象, $SQL语句);
그 중 $connection 객체는 mysqli_connect 함수를 통해 생성된 데이터베이스 연결 객체이고, $SQL 문은 실행할 쿼리 연산문입니다.
2. mysqli_query 함수를 사용하여 간단한 쿼리 수행
다음은 mysqli_query 함수를 사용하여 쿼리 작업을 수행하는 방법을 보여주는 간단한 예입니다.
<?php // 创建数据库连接 $connection = mysqli_connect("localhost", "用户名", "密码", "数据库名"); // 检查连接是否成功 if (!$connection) { die("数据库连接失败:" . mysqli_connect_error()); } // 执行查询语句 $result = mysqli_query($connection, "SELECT * FROM users"); // 遍历查询结果 while ($row = mysqli_fetch_assoc($result)) { echo "ID:" . $row["id"] . ",姓名:" . $row["name"] . ",年龄:" . $row["age"] . "<br>"; } // 关闭数据库连接 mysqli_close($connection); ?>
위 코드에서 먼저 mysqli_connect 함수를 사용하여 데이터베이스 연결을 생성합니다. 개체 $ 연결. 그런 다음 mysqli_query 함수를 사용하여 간단한 쿼리 문 "SELECT * FROM users"를 실행하고 쿼리 결과를 $result 변수에 저장합니다. 마지막으로 mysqli_fetch_assoc 함수를 사용하여 $result에서 레코드 행을 가져와서 작업합니다.
3. 쿼리 결과 처리
mysqli_query 함수가 쿼리 문을 실행한 후 반환된 결과를 다양한 방법으로 처리할 수 있습니다. 일반적으로 사용되는 방법에는 mysqli_fetch_assoc 함수, mysqli_fetch_array 함수 및 mysqli_fetch_row 함수가 포함됩니다.
이러한 함수를 사용할 때는 루프 문을 사용하여 쿼리 결과를 행별로 처리하여 모든 레코드를 검색해야 합니다.
4. 쿼리 결과 예외 처리
쿼리 작업을 실행할 때 구문 오류, 데이터베이스 연결 중단 등의 오류가 발생하는 경우가 있습니다. 애플리케이션 충돌을 일으키는 이러한 오류를 방지하려면 오류를 적절하게 처리해야 합니다. 쿼리 연산의 오류 정보는 아래와 같이 mysqli_error 함수를 통해 얻을 수 있습니다.
<?php $result = mysqli_query($connection, $sql); if (!$result) { die("查询失败:" . mysqli_error($connection)); } ?>
위의 예에서 쿼리가 실패하면 mysqli_error 함수를 통해 오류 정보를 얻어서 die 함수를 사용하여 출력합니다. 이런 방식으로 문제를 적시에 발견하고 해결할 수 있습니다.
5. 보안 고려사항
데이터베이스 쿼리를 수행할 때 악의적인 주입 공격을 방지하기 위해 보안 문제도 고려해야 합니다. 이러한 상황을 피하기 위해 아래와 같이 mysqli_real_escape_string 함수를 사용하여 사용자가 입력한 데이터를 이스케이프할 수 있습니다.
<?php $name = mysqli_real_escape_string($connection, $_POST["name"]); $sql = "SELECT * FROM users WHERE name='$name'"; $result = mysqli_query($connection, $sql); ?>
위의 예에서는 mysqli_real_escape_string 함수를 사용하여 사용자가 입력한 $name을 이스케이프합니다. 쿼리문의 일부로 사용하세요. 이렇게 하면 사용자가 입력한 데이터가 쿼리 문의 구조를 파괴하지 않아 SQL 주입 공격을 피할 수 있습니다.
요약:
이 글에서는 주로 mysqli_query 함수를 사용하여 SQL 쿼리 작업을 수행하는 방법을 소개합니다. mysqli_query 함수의 기본적인 사용법을 익히면 개발자는 보다 편리하게 데이터베이스를 운영하고 개발 효율성을 높일 수 있습니다. 또한 데이터베이스 쿼리를 수행할 때 시스템의 안정성과 보안을 보장하기 위해 예외 처리 및 보안 고려 사항에 주의를 기울여야 합니다. 이 기사가 PHP 개발 시 데이터베이스 쿼리에 도움이 되기를 바랍니다.
위 내용은 PHP 데이터베이스 쿼리 팁: mysqli_query 함수를 사용하여 SQL 쿼리를 수행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!