>  기사  >  백엔드 개발  >  PHP에서 mysql 데이터베이스의 쿼리 데이터를 읽는 방법

PHP에서 mysql 데이터베이스의 쿼리 데이터를 읽는 방법

藏色散人
藏色散人원래의
2021-10-18 09:22:282973검색

PHP가 mysql 데이터베이스에서 쿼리된 데이터를 읽는 방법: 1. mysqli_connect를 통해 mysql 데이터베이스에 연결합니다. 2. 문자 집합 인코딩 형식을 설정합니다. 3. SQL 문을 실행합니다.

PHP에서 mysql 데이터베이스의 쿼리 데이터를 읽는 방법

이 기사의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

php는 mysql 데이터베이스에서 쿼리 데이터를 어떻게 읽나요?

PHP+MySql은 백그라운드 데이터 읽기를 실현합니다.

우리는 PHP의 php_mysqli 확장을 사용하고 있습니다

먼저 기본적인 사용법을 이해하세요

1.

mysqli_connect()
를 사용하여 데이터베이스에 연결합니다. 매개변수: ①호스트 주소 ② MYSQL 사용자 이름 ③ MYSQL 비밀번호 ④ 연결할 데이터베이스 선택 ⑤ 포트 번호
Return: 연결에 성공하면 리소스 유형의 식별자를 반환하고, 실패하면 false를 반환
Mysql로 ​​두 개 이상의 연결을 설정하면 다양한 나중에 데이터베이스를 운영하는 함수가 사용될 것입니다. 반환된 연결 기호를 전달해야 합니다.
mysql과 하나의 연결만 설정하면 데이터베이스를 운영하는 다양한 함수는 앞으로 이 식별자를 전달할 필요가 없습니다.

2 . 문자 집합 인코딩 형식 설정
mysqli_set_charset();

3. SQL 문을 실행합니다.
추가, 삭제 또는 수정인 경우 성공 여부에 관계없이 Boolean 형식을 반환합니다.
쿼리인 경우 리소스 결과 집합을 반환합니다.
$res=mysqli_query();

4. 결과 집합을 처리합니다.

    mysqli_fetch_assoc($res);   返回关联数组
    mysqli_fetch_row($res);    返回索引数组
    mysqli_fetch_object($res);   返回对象
    mysqli_fetch_field($res);      返回结果集中每一列的字段信息(字段名,表名,数据库名,字段类型)
    mysqli_data_seek($res, 0);    设置结果集指针位置,为零,结果集复位到最开始
    mysqli_free_result($res);     释放查询资源结果集
    mysqli_close($conn);      关闭数据库连接

이렇게 해 보겠습니다. 간단한 등록 및 로그인 기능을 구현합니다.

먼저 일반 구성을 PHP 파일에 언급한 다음 나중에 가져옵니다.

<?php
    header("Content-Type:text/html;charset=utf-8");
    
    
    define("HOST", "127.0.0.1");
    define("USERNAME", "root");
    define("PASSWORD", "");
    define("DBNAME", "mydb");
    define("CHARSET", "utf8");
    
    $con=mysqli_connect(HOST, USERNAME, PASSWORD, DBNAME) or die("数据库连接失败,<span style=&#39;color:red;&#39;>".mysqli_connect_error()."</span>");
    mysqli_set_charset($con, CHARSET) or die("字符集编码设置无效");

사용자 정보에 액세스하기 위해 데이터베이스에 테이블을 만듭니다. 여기서는 mydb 데이터베이스에 submit이라는 테이블을 만들었습니다.

가장 먼저 할 일은 등록 기능입니다. 등록은 사용자 입력 양식의 정보를 백엔드 데이터베이스의 테이블에 저장하는 것입니다.

다음은 등록 페이지의 스타일입니다. 즉, 이름 ID만 기억하세요

<p>d637b26c7618e8e4a387936d13117b79<br>            41f694bf073fda5f8b66ecb924074ffb<br>                62adb46bd367e8d79708a3bf3765ea34用户注册16b28748ea4df4d9c2150843fecfba68<br>            16b28748ea4df4d9c2150843fecfba68<br>            165eec484993f6c5e1b1fbd7bf5de649<br>                e61fd69228ce2c22fa7ddf26c584f7f0<br>                    b48d3695334c0d29c002309400bcc6ac<br>                        2e1cf0710519d5598b1f0f14c36ba674用户名8c1ecd4bb896b2264e0711597d40766c<br>                        3539a64e167199a3df90fef036934dd2<br>                    16b28748ea4df4d9c2150843fecfba68<br>                    b48d3695334c0d29c002309400bcc6ac<br>                        2e1cf0710519d5598b1f0f14c36ba674密码8c1ecd4bb896b2264e0711597d40766c<br>                        e9fc16704f34efbb11b15fe4cb6374de<br>                    16b28748ea4df4d9c2150843fecfba68<br>                    b48d3695334c0d29c002309400bcc6ac<br>                        2e1cf0710519d5598b1f0f14c36ba674确认密码8c1ecd4bb896b2264e0711597d40766c<br>                        d73581b0707fe32523581bf1842a8f07<br>                    16b28748ea4df4d9c2150843fecfba68<br>                    b48d3695334c0d29c002309400bcc6ac<br>                        2e1cf0710519d5598b1f0f14c36ba674真实姓名8c1ecd4bb896b2264e0711597d40766c<br>                        8ce8835b7396c2dfb5defcf6686ff330<br>                    16b28748ea4df4d9c2150843fecfba68<br>                    <br>                    52f158f9b58d170d0b8c1792170e9180<br>                        13d9db4a2ed7d591442792ba647dcf80<br>                            <br>                        a83d825548a1fb4694e1547579091cb1返回登录5db79b134e9f6b82c0b36e0489ee08ed<br>                    16b28748ea4df4d9c2150843fecfba68<br>                    <br>                f5a47148e367a6035fd7a2faa965022e<br>            16b28748ea4df4d9c2150843fecfba68<br>        16b28748ea4df4d9c2150843fecfba68<br></p>

JQuery를 사용하여 백그라운드에 데이터를 POST하는 방법을 보는 것이 핵심입니다

<p>cf7d6897649c21fc8fd1414f6811503d2cacc6d41bbb37262a98f745aa00fbf0<br>    5cd6e472395e766622bc5d31b556eb7a<br>        $(function(){<br>            $("#submit").on("click",function(){                var userName = $("input[name='userName']").val();                var pwd = $("input[name='pwd']").val();                var rePwd = $("input[name='rePwd']").val();                var realName = $("input[name='realName']").val();                if(userName==""||pwd==""||rePwd==""||realName==""){<br>                    alert("所有信息不可为空,请确认!");                    return;<br>                }else if(pwd!=rePwd){<br>                    alert("两次密码输入不一致!");                    return;<br>                }<br>                <br>                $.post("doReg.php",{                    "userName":userName,                    "pwd":pwd,                    "realName":realName<br>                },function(data){<br>                    alert(data);                    <br>                    if(data=="注册成功"){<br>                        location = "login.php";<br>                    }<br>                })<br>                <br>            });<br>        });    2cacc6d41bbb37262a98f745aa00fbf0<br></p>

백그라운드의 PHP 파일이 데이터를 받은 후 SQL을 통해 데이터베이스를 작동합니다. 명령문을 작성하여 테이블에 데이터를 저장합니다

<p>a5d587a141753b69bf46dd48458ee7ee0){        die("用户名已经存在!");  <br>    }    elseif($res){        echo 'true';<br>    }else{        die();<br>    }    <br></p>

이런 식으로 등록 버튼을 클릭하면 입력된 정보가 테이블에 저장됩니다. 성공하면 로그인 페이지로 이동합니다

다음으로 할 일은 로그인 페이지입니다. 로그인 기능은 테이블에 저장된 사용자 이름과 비밀번호 정보를 읽어야 합니다.

로그인 페이지 스타일에 대해서는 별로 할 말이 없습니다. 또한 필수 이름과 ID를 기억하세요

<div class="panel panel-primary">
            <div class="panel-heading">
                <div class="panel-title">用户登录</div>
            </div>
            <div class="panel-body">
                <form class="form-horizontal">
                    <div class="form-group">
                        <label>用户名</label>
                        <input type="text" class="form-control" name="userName"/>
                    </div>
                    <div class="form-group">
                        <label>密码</label>
                        <input type="password" class="form-control" name="pwd"/>
                    </div>
                    
                    <div class="form-group btns">
                        <input type="button" class="btn btn-primary" value="登录系统" id="submit"/>
                            
                        <a type="button" class="btn btn-success" href="reg.php"/>注册账号</a>
                    </div>
                    
                </form>
            </div>
        </div>

핵심은 JQ 코드

<p><script src="../../js/jquery-1.10.2.js"></script><br/>    <script type="text/javascript"><br/>        $(function(){<br/>            $("#submit").on("click",function(){                var userName = $("input[name=&#39;userName&#39;]").val();                var pwd = $("input[name=&#39;pwd&#39;]").val();<br/>                <br/>                $.post("doLogin.php",{                    "userName":userName,                    "pwd":pwd<br/>                },function(data){<br/>                    alert(data);                    if(data=="登录成功"){<br/>                        location = "index.php";<br/>                    }else{<br/>                        alert("用户名或密码有误!");<br/>                    }<br/>                });<br/>            });<br/>        });    </script><br/></p>

위 로그인 페이지의 JQ 코드가 하는 일은 백그라운드 로그인을 통해 데이터베이스에서 사용자 이름과 비밀번호 정보를 읽어오는 것입니다. PHP 파일 사용자가 새로 입력한 정보와 비교해 보면 true이면 로그인이 성공한 것입니다

그럼 백엔드 로그인 페이지를 작성하는 방법은 아주 간단하죠? 프론트엔드 로그인 페이지로 돌아왔습니다

<p><?php    <br/>header("Content-Type:text/html;charset=utf-8");include_once("../mysql/mysql.php");    <br/>    $userName = $_POST["userName"];    $pwd = $_POST["pwd"];    <br/>    $loginSql = <<<login<br/>    select * from submit where username="{$userName}" and pwd = "{$pwd}";<br/>login;    $res = mysqli_query($con, $loginSql);    <br/>    if($row = mysqli_fetch_row($res)){        $_SESSION["user"] = $row;        echo "登录成功";<br/>    }else{        echo "登录失败";<br/>    }    <br/>    mysqli_free_result($res);    mysqli_close($con);<br/></p>

로그인 성공 그 후 로그인이 성공했다는 메시지가 표시되고 홈페이지(index.html)로 이동합니다

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 mysql 데이터베이스의 쿼리 데이터를 읽는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.