Wie überprüfe ich die Anmeldung in der http-Datenbank in PHP? Schauen wir uns als Nächstes ein Implementierungsbeispiel für die HTTP-Datenbankauthentifizierungsanmeldung in PHP an.
1. Über die Dateiauthentifizierungsmethode
Parsen Sie das Anmeldekonto und das Passwort, die in der erstellten .htpasswd-Datei gespeichert sind
Extrahieren Sie das von der Datei gesendete HTTP Rezeption Überprüfen Sie das Anmeldekonto und das Passwort
$_SERVER['PHP_AUTH_USER'] und $_SERVER['PHP_AUTH_PW']
Vergleichen Sie den Code bzw. die Datenbankmethode
Die Codeadresse
https://github.com/956077081/PHP_demo/blob/master/HttpLogin.php
2. Informationen zum Dateivergleich basierend auf der Datenbank
<?php //验证Http的两个参数 //$_SERVER['PHP_AUTH_USER'] //$_SERVER['PHP_AUTH_PW']; //echo $_SERVER['PHP_AUTH_USER']."\r\n"; //echo $_SERVER['PHP_AUTH_PW']; function authenticate_user () { header("WWW-Authenticate: Basic realm ='Project'"); header("HTTP/1.1 401 unauthorized"); } $user = $_SERVER['PHP_AUTH_USER']; $passwd = $_SERVER['PHP_AUTH_PW']; if( !isset($user) ||!isset($passwd)){ authenticate_user(); }else{ $db = new mysqli("localhost", "root", "123456", "httpauth"); $stm = $db->prepare("select name ,passwd from auth where name=? and passwd=?"); $stm->bind_param("ss",$user,$passwd); $stm->execute(); $stm->store_result(); if ( $stm->num_rows == 0 ){ authenticate_user(); }else{ echo "you are sucessful to login !"; } }
Die entsprechende Datenbank (httpauth) Die Klartext-Verifizierungsmethode kann auch zum Verschlüsseln und Vergleichen der Datenbank und der PHP-Originaldaten verwendet werden
use httpauth; create table autht( id int(10) UNSIGNED not NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL DEFAULT '' , passwd VARCHAR(50) not NULL DEFAULT '', harsh VARCHAR(50) DEFAULT '', PRIMARY KEY(id,name), INDEX `asd` (name) ) ENGINE = INNODB , DEFAULT CHARSET = UTF8 COMMENT="HTTP登录验证"
Verwandte Empfehlungen:
PHP-Benutzer-Cookie-Anmeldebestätigung und MySQL-Daten-Anmeldebestätigungsmethoden
Das obige ist der detaillierte Inhalt vonSo überprüfen Sie die Anmeldung in der http-Datenbank in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!