PHP 데이터베이스 연결 단...LOGIN

PHP 데이터베이스 연결 단계

우리는 모든 사람을 위한 데이터베이스 연결의 가장 중요한 8가지 단계를 농담으로 "데이터베이스 연결의 8단계"라고 부릅니다.

8단계는 다음과 같으며, 각 단계에서 사용되는 기능을 설명합니다.

1단계: 데이터베이스 서버에 연결

类型说明
函数mysqli_connect
功能连接到mysql数据库服务器
参数1主机
参数2数据库服务器登陆名
参数3密码
参数4数据库的名称
参数5数据库服务器端口不填默认3306

파라미터 4의 경우, 이 단계에서 데이터베이스 이름을 입력하고 선택했으므로 세 번째 단계를 수행할 필요가 없습니다.

2단계: 판단 오류

类型说明
函数mysqli_errno
功能返回连接错误号,无错误返回0
参数1传入mysqli_connect返回的资源
类型说明
函数mysqli_error
功能返回连接错误字符串
参数1传入mysqli_connect返回的资源

3단계: 데이터베이스 선택

类型说明
函数mysqli_select_db
功能选择本连接中的数据库
参数1传入mysqli_connect返回的资源
参数2需要连接的数据库名

1단계에서 데이터베이스가 채워졌다면, 필요 없음 다른 데이터베이스로 변경하는 경우 세 번째 단계를 수행할 필요가 없습니다.

4단계: 문자 세트 설정

类型说明
函数mysqli_set_charset
功能设置与mysql服力器连接,结果,校验字符集
参数1传入mysqli_connect返回的资源
参数2字符集类型

자세한 내용은 "13.6 잘못된 데이터 표시에 대한 궁극적인 솔루션" 책을 참고하세요.

5단계: SQL 문 준비

는 실제로 SQL 문 문자열입니다.

예:

<?php
$sql = "insert into user(username,password) values('$username','$password')";
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }

// some code

?>

우리는 일반적으로 SQL 문에 사용할 변수를 할당합니다. 그러나 변수나 SQL 문에 오류가 있어 해결이 매우 어렵습니다.

실제 업무 경험을 바탕으로 이 단계를 추가했습니다.

이 단계를 실행할 때 오류가 보고되면 SQL 문을 인쇄하여 phpMyAdmin 또는 관련 도구에 붙여 넣을 수 있습니다.

트러블슈팅 시 실행이 성공하면 SQL 문에 문제가 없다는 의미입니다. 실행이 실패하면 SQL 문을 다시 확인하세요.

6단계: SQL 문 보내기

类型说明
函数mysqli_query
功能发送SQL语句
参数1传入mysqli_connect返回的资源
参数2传入发送的SQL语句

SQL 문이 준비되었으며 mysqli_query를 통해 MySQL 서버로 전송되어야 합니다.

MySQL 서버는 전송된 SQL 문을 실행하여 실행합니다.

7단계: 실행이 정상인지 데이터를 순회하는지 확인

읽기

6단계에서는 선택한 카테고리의 명령문이 전송되며 결과는 일반적으로 필요합니다. 출력되어 표시됩니다. 표시 데이터를 순회하는 기능을 사용해야 합니다.

类型说明
函数mysqli_fetch_array
功能得到result结果集中的数据,返回数组进行便利
参数1传入查询出来的结果变量
参数2传入MYSQLI_NUM返回索引数组,MYSQLI_ASSOC返回关联数组,MYSQLI_BOTH返回索引和关联
类型说明
函数mysqli_fetch_assoc
功能得到result结果集中的数据,返回关联数组进行便利
参数1传入查询出来的结果变量
类型说明
函数mysqli_fetch_row
功能得到result结果集中的数据,返回索引数组进行便利
参数1传入查询出来的结果变量
类型说明
函数mysqli_fetch_object
功能得到result结果集中的数据,返回对象进行遍历
参数1传入查询出来的结果变量
类型说明
函数mysqli_num_rows
功能返回查询出来的结果总数
参数1传入查询出来的结果变量
类型说明
函数mysqli_num_rows
功能返回查询出来的结果总数
参数1传入查询出来的结果变量
实际工作中用得非常少,了解

쓰기

6단계에서 insert 문이 전송되면 일반적으로 실행 성공 여부를 확인하거나 자체 증분 ID를 동시에 가져와야 합니다.

类型说明
函数mysqli_fetch_field
功能遍历数据行
参数1传入查询出来的结果变量

수정 및 삭제

6단계에서는 카테고리 업데이트 및 삭제 명령문이 전송됩니다. 실행이 성공했는지 여부만 확인하면 됩니다.

모든 사람이 확인할 수 있도록 일반적으로 사용되는 기능을 데이터 테이블에 나열합니다.

8단계: 데이터베이스 닫기

类型说明
函数mysqli_close
功能关闭数据库连接
参数1传入mysqli_connect返回的资源

데이터베이스 연결은 리소스 유형입니다. 이전 장에서 리소스 유형을 설명할 때 이에 대해 설명했습니다. 관련된 모든 리소스 유형은 열리거나 닫힙니다. 이를 통해 PHP는 리소스를 보다 효율적으로 처리하고 재활용할 수 있습니다.

따라서 데이터베이스 연결이 성공한 후에는 사용할 필요가 없습니다. 이 연결을 닫을 수 있습니다.

기타: 서버 정보 표시 기능

类型说明
函数mysqli_get_server_info
功能返回服务器信息
参数1传入mysqli_connect返回的资源
类型说明
函数mysqli_get_server_version
功能返回服务器版本
参数1传入mysqli_connect返回的资源

참고:
Mysqli에서는 절차적 방법만 배우면 됩니다. 객체 지향 단계의 실제 작업에서는 mysqli의 객체 사용을 완전히 포기하고 대신 PDO 객체를 사용하여 데이터베이스에 연결했습니다.

다음 섹션
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } // some code ?>
코스웨어