PHP 데이터베이스 연결에는 데이터베이스 호스트 이름, 데이터베이스 이름, 연결 설정(mysqli_connect()), 오류 처리(mysqli_error() 및 mysqli_errno()), 영구 연결(mysqli_pconnect()) 및 준비된 명령문, 트랜잭션 및 실제 사례(사용자 데이터 읽기)
PHP 데이터베이스 연결에 대한 최종 가이드
머리말
동적 웹 애플리케이션을 구축하려면 데이터베이스와 상호 작용하는 것이 중요합니다. PHP는 강력하고 안정적인 데이터베이스 연결을 구축하기 위한 다양한 옵션을 제공합니다. 이 기사에서는 기본 개념부터 고급 기술까지 PHP 데이터베이스 연결 기술에 대한 포괄적인 소개를 제공합니다.
데이터베이스 연결 기본 사항
데이터베이스 연결은 두 가지 주요 요소로 구성됩니다.
연결 설정
데이터베이스에 대한 연결을 설정하려면 PHP의 mysqli_connect()
함수를 사용할 수 있습니다. mysqli_connect()
函数:
$mysqli = mysqli_connect("localhost", "root", "password", "database_name");
此函数返回一个 mysqli
对象,它表示与数据库的连接。如果连接失败,它会返回 false。
错误处理
错误处理对于确保连接到数据库的代码的可靠性至关重要。使用 mysqli 函数 mysqli_error()
和 mysqli_errno()
来获取连接错误信息:
if ($mysqli->connect_errno) { echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; }
持久连接
持久连接有助于提高应用程序的性能,因为它可以复用先前建立的连接。要启用持久连接,请使用 mysqli_pconnect()
函数:
$mysqli = mysqli_pconnect("localhost", "root", "password", "database_name");
高级特性
预处理语句
预处理语句可以防止 SQL 注入攻击,并提高查询性能:
$stmt = $mysqli->prepare("SELECT * FROM users WHERE username = ?"); $stmt->bind_param("s", $username); $stmt->execute();
事务
事务允许您将多个数据库操作组合成一个事务性单元。如果任何操作失败,整个事务将回滚:
$mysqli->begin_transaction(); $mysqli->query("INSERT INTO orders (product_id, quantity) VALUES (1, 5)"); $mysqli->commit();
实战案例:读取用户数据
假设您有一个 users
表,其中包含 id
, username
, email
$mysqli = mysqli_connect("localhost", "root", "password", "database_name"); if ($mysqli->connect_errno) { echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; } $sql = "SELECT * FROM users"; $result = $mysqli->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "ID: " . $row["id"] . "이 함수는
"; echo "Username: " . $row["username"] . "
"; echo "Email: " . $row["email"] . "
"; } } else { echo "No users found."; } $mysqli->close();
mysqli
개체를 반환합니다. , 이는 데이터베이스에 대한 연결을 나타냅니다. 연결에 실패하면 false를 반환합니다. 오류 처리
오류 처리는 데이터베이스에 연결하는 코드의 안정성을 보장하는 데 중요합니다. 연결 오류 정보를 얻으려면 mysqli 함수mysqli_error()
및 mysqli_errno()
를 사용하십시오. 이전에 설정된 연결을 재사용합니다. 영구 연결을 활성화하려면 mysqli_pconnect()
함수를 사용하세요. 🎜rrreee🎜🎜고급 기능🎜🎜🎜🎜준비된 문🎜🎜🎜준비된 문은 SQL 삽입 공격을 방지하고 쿼리 성능을 향상시킬 수 있습니다.🎜 rrreee🎜🎜 트랜잭션🎜🎜🎜트랜잭션을 사용하면 여러 데이터베이스 작업을 단일 트랜잭션 단위로 결합할 수 있습니다. 작업이 실패하면 전체 트랜잭션이 롤백됩니다. 🎜rrreee🎜🎜실제 예: 사용자 데이터 읽기🎜🎜🎜 id
가 포함된 users
테이블이 있다고 가정합니다. , 사용자 이름
, 이메일
열. 모든 사용자 정보를 읽는 PHP 스크립트를 만듭니다. 🎜rrreee🎜🎜결론🎜🎜🎜이 문서에 설명된 단계를 따르면 강력하고 안정적인 PHP 데이터베이스 연결을 설정할 수 있습니다. 준비된 명령문, 트랜잭션 및 고급 기능을 통해 코드의 성능과 보안을 향상하세요. 🎜위 내용은 PHP 데이터베이스 연결에 대한 궁극적인 가이드: 알아야 할 모든 것을 다룹니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!