현재 위치: > 최신 기사 목록> 세션 스토리지와 결합하기 위해 MySQLI_RESULT를 사용하는 예

세션 스토리지와 결합하기 위해 MySQLI_RESULT를 사용하는 예

M66 2025-05-28

PHP 웹 사이트 응용 프로그램을 개발할 때는 종종 데이터베이스에서 프론트 엔드로 얻은 데이터를 동적으로 표시해야하며, 사용자가 페이지를 새로 고치거나 떠난 후이 데이터를 지속적으로 저장하여 손실을 방지 할 수 있기를 바랍니다. MySQLI_RESULT 기능을 PHP 세션 스토리지와 결합하면이 목표를 매우 쉽게 달성 할 수 있습니다. 이 기사는 동적 디스플레이 및 데이터 지속성 에이 두 가지를 사용하는 방법을 자세히 소개합니다.

1. mysqli_result 함수는 무엇입니까?

mysqli_result 는 MySQL 쿼리 결과를 처리하는 PHP의 클래스입니다. 일반적으로 mysqli_query 또는 mysqli_store_result 함수를 통해 얻어지며 쿼리 결과를 통과하는 다양한 방법을 제공합니다. 간단한 예는 다음과 같습니다.

 <?php
// 연결하십시오 MySQL 데이터 베이스
$mysqli = new mysqli("localhost", "user", "password", "database");

// 연결이 성공했는지 확인하십시오
if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}

// 쿼리를 실행하십시오
$query = "SELECT id, name, email FROM users";
$result = $mysqli->query($query);

// 사용 mysqli_result 쿼리 결과를 가로 지르는 클래스
if ($result->num_rows > 0) {
    // 각 행의 출력 데이터
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
} else {
    echo "0 결과";
}
$mysqli->close();
?>

위 코드에서 $ result ariable에는 데이터베이스 쿼리의 결과가 포함됩니다. Fetch_assoc 메소드를 사용하여 데이터 행을 행으로 추출하여 표시합니다.

2. 세션 저장소 란 무엇입니까?

세션은 사용자 세션 정보를 저장하기 위해 PHP가 제공하는 방법입니다. 사용자가 웹 사이트를 방문하면 PHP는 각 사용자에게 고유 한 세션 ID를 할당 하고이 ID를 통해 일부 데이터를 저장합니다. 이 데이터는 사용자가 세션을 종료하거나 브라우저를 닫을 때까지 사용자 세션 전체에서 변경되지 않은 상태로 유지 될 수 있습니다.

세션 사용은 매우 간단합니다. Session_Start () 를 통해 세션을 시작한 다음 $ _session 배열을 사용하여 저장하고 데이터를 가져와야합니다.

 <?php
// 세션을 시작하십시오
session_start();

// 데이터를 저장하십시오 Session
$_SESSION['user_id'] = 1;
$_SESSION['user_name'] = "John Doe";

// 데이터를 얻으십시오
echo $_SESSION['user_name'];  // 산출: John Doe
?>

3. MySQLI_RESULT 와 세션을 결합하여 동적 디스플레이와 데이터의 지속성을 달성하는 방법은 무엇입니까?

다음으로 MySQLI_RESULT 기능 및 세션 스토리지를 결합하여 기능을 구현합니다. 데이터베이스에서 사용자 데이터를 동적으로 얻고 페이지를 새로 고치거나 사용자 데이터를 영구적으로 저장하는 것을 유지하면서 표시합니다.

1 단계 : 데이터베이스를 쿼리하고 세션에 데이터를 저장합니다.

먼저 데이터베이스에서 필요한 데이터를 쿼리 하고이 데이터를 세션 에 저장해야합니다. 여기서 우리는 사용자의 기본 정보를 얻고 세션에 저장하여 후속 페이지 액세스에서 직접 사용할 수 있다고 가정합니다.

 <?php
// 세션을 시작하십시오
session_start();

// 연결하십시오데이터 베이스
$mysqli = new mysqli("localhost", "user", "password", "database");

// 연결이 성공했는지 확인하십시오
if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}

// 쿼리를 실행하십시오
$query = "SELECT id, name, email FROM users WHERE id = 1";
$result = $mysqli->query($query);

// 将查询결과存储到 Session
if ($result->num_rows > 0) {
    $user_data = $result->fetch_assoc();
    $_SESSION['user_data'] = $user_data;
} else {
    echo "사용자 데이터가 발견되지 않았습니다";
}

$mysqli->close();
?>

2 단계 : 페이지에 데이터를 동적으로 표시합니다

다음으로, 페이지의 세션 에 저장된 데이터를 동적으로 표시해야합니다. 사용자가 페이지를 몇 번이나 새로 고치더라도 세션이 만료되지 않았거나 지우는 한 데이터를 $ _session 배열로 유지할 수 있습니다.

 <?php
// 세션을 시작하십시오
session_start();

// 사용자 데이터가 저장되었는지 확인하십시오
if (isset($_SESSION['user_data'])) {
    $user_data = $_SESSION['user_data'];
    echo "사용자 ID: " . $user_data['id'] . "<br>";
    echo "사용자名: " . $user_data['name'] . "<br>";
    echo "이메일: " . $user_data['email'] . "<br>";
} else {
    echo "사용자 데이터가 발견되지 않았습니다";
}
?>

3 단계 : 세션 데이터를 지우십시오

때로는 사용자가 로그 아웃하거나 로그 아웃 할 때 세션 에서 데이터를 지워야합니다. 세션 데이터는 session_unset () 또는 session_destroy ()를 사용하여 지울 수 있습니다.

 <?php
// 세션을 시작하십시오
session_start();

// 분명한 Session 데이터
session_unset();

// 파괴하다 Session
session_destroy();

echo "당신은 성공적으로 로그 아웃했습니다";
?>

4. 요약

MySQLI_RESULT 기능과 PHP 세션 스토리지를 결합하여 데이터베이스에 데이터를 동적으로 표시하고 사용자가 페이지를 새로 고침 한 후에도 데이터 지속성을 유지할 수 있습니다. 세션은 각 사용자에게 지속적인 저장 공간을 제공하며 MySQLI_Result를 사용하면 데이터베이스에서 쉽게 데이터를 얻고 처리 할 수 ​​있습니다.

이 기술은 사용자 로그인 상태, 개인화 된 설정 또는 사용자 데이터를 임시로 저장하는 응용 프로그램에 매우 유용합니다. 이 두 가지를 유연하게 결합하면 사용자 경험을 향상시키고 데이터를 효과적으로 관리 할 수 ​​있습니다.