Heim  >  Artikel  >  Backend-Entwicklung  >  Wie implementiert man die Anmeldung zur App-Verifizierung in PHP? (Codebeispiel)

Wie implementiert man die Anmeldung zur App-Verifizierung in PHP? (Codebeispiel)

PHPz
PHPzOriginal
2023-03-23 11:12:051559Durchsuche

PHP kann als serverseitige Skriptsprache mit dem Frontend interagieren und Funktionen zur Anmeldeüberprüfung für mobile Anwendungen bereitstellen. In diesem Artikel wird erläutert, wie Sie die App-Verifizierungsanmeldung in PHP implementieren.

1. Erforderliche Kenntnisse

  • Vertraut mit den Grundlagen der PHP-Sprache

  • Vertraut mit HTTP-Anfragen und -Antworten

  • Vertraut mit dem Anmeldevorgang für die mobile APP

2. Umsetzung Prozess

  1. Benutzer fordert Anmeldung an

APP initiiert eine Anmeldeanforderung und muss die Kontonummer, das Passwort und andere vom Benutzer eingegebene Informationen an den Server senden.

  1. Der Server empfängt die Anfrage und verarbeitet die Daten

Nach Erhalt der Anfrage extrahiert der Server die Kontonummer, das Passwort und andere vom Benutzer eingegebene Daten und verwendet eine Datenbank (z. B. MySQL) zum Vergleich und zur Überprüfung.

  1. Datenbanküberprüfung

Durch Herstellen einer Verbindung zur Datenbank extrahieren Sie die Benutzernamen- und Kennwortdaten aus der Datenbank, vergleichen Sie die vom Benutzer eingegebenen Daten mit den Daten in der Datenbank und generieren Sie bei bestandener Überprüfung eine Sitzung oder ein Token und andere Informationen und senden Sie diese als Antwortergebnis an die mobile APP.

  1. APP-Verifizierung

APP empfängt die vom Server zurückgegebenen Sitzungs- oder Token-Informationen und speichert sie für zukünftige Anfragen im lokalen Speicher des Geräts.

  1. Anfrageüberprüfung

Wenn die APP eine Anfrage an den Server sendet, fügt sie die Sitzungs- oder Tokeninformationen in den Anfrageheader ein. Wenn der Server die Anfrage empfängt, überprüft er die Sitzung oder das Token Das Anforderungsergebnis wird zurückgegeben, andernfalls wird eine Verify-Fehlermeldung zurückgegeben.

  1. Anmeldezeitüberschreitung

Um die Sicherheit zu gewährleisten, muss der Server die Gültigkeitsdauer der Anmeldeinformationen begrenzen. Wenn der Benutzer innerhalb eines bestimmten Zeitraums keine Vorgänge ausführt, muss er sich erneut anmelden und die Sitzung oder das Token neu generieren und andere Informationen.

3. Code-Implementierung

Das Folgende ist ein einfacher Prozess zur Implementierung des Anmeldebestätigungscodes.

  1. Datenbankverbindung

Verwenden Sie die PHP-Sprache PDO (PHP Data Objects) für die Datenbankverbindung und den Betrieb. Sie müssen die Datenbank-Hostadresse, den Benutzernamen und das Passwort sowie andere Informationen angeben:

<?php
$servername = "localhost";
$username = "username";
$password = "password";

try {
  $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  echo "Connected successfully";
} catch(PDOException $e) {
  echo "Connection failed: " . $e->getMessage();
}
?>
  1. Benutzerüberprüfung

Bestanden Die POST-Methode ruft die vom Benutzer eingegebenen Konto- und Passwortdaten ab, verwendet vorbereitete Anweisungen zum Vorkompilieren von Abfrageanweisungen und fragt ab, ob der entsprechende Benutzername und das entsprechende Passwort in der Datenbank vorhanden sind. Wenn ja, werden Erfolgsinformationen zurückgegeben. andernfalls werden Fehlerinformationen zurückgegeben. Der spezifische Code lautet wie folgt:

<?php
// 验证用户输入数据
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  // 获取POST请求中的数据
  $username = $_POST["username"];
  $password = $_POST["password"];

  // 以预编译语句方式查询数据库中用户信息
  $stmt = $conn->prepare("SELECT * FROM users WHERE username=:username AND password=:password");
  $stmt->bindParam(':username', $username);
  $stmt->bindParam(':password', $password);
  $stmt->execute();

  $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
  $rows = $stmt->fetchAll();

  if (count($rows) > 0) {
    // 用户验证成功
    echo "Login successfully";
    // 将session或token等信息返回给移动端APP
    // 略
  } else {
    // 用户验证失败
    echo "Login failed";
  }
}
?>
  1. Anforderungsüberprüfung

Bei der Implementierung der Anforderungsüberprüfung auf der Serverseite müssen die Sitzungs- oder Tokeninformationen aus dem Anforderungsheader entnommen werden, um ihre Gültigkeit zu überprüfen. Der spezifische Code lautet wie folgt:

<?php
// 请求验证处理
if ($_SERVER["REQUEST_METHOD"] == "GET") {
  // 从请求头中获取session或token信息
  $token = $_SERVER[&#39;HTTP_TOKEN&#39;];

  // 判断session或token是否存在或已失效
  if (isset($_SESSION[&#39;token&#39;]) && $_SESSION[&#39;token&#39;] == $token) {
    // 请求验证成功
    echo "Request authorized";
    // 略
  } else {
    // 请求验证失败
    echo "Request unauthorized";
  }
}
?>

4. Zusammenfassung

Durch die obige Implementierung können wir die Anmeldung der mobilen APP effektiv überprüfen und die Sicherheit der Benutzerinformationen gewährleisten. In der tatsächlichen Entwicklung müssen weitere Situationen berücksichtigt werden, z. B. Cookies und clientseitiges Caching, Unterstützung mehrerer Plattformen usw. Gleichzeitig müssen wir auch Sicherheitsprobleme wie XSS, CSRF und andere Angriffsmethoden berücksichtigen und den Sicherheitsschutz des Codes stärken.

Das obige ist der detaillierte Inhalt vonWie implementiert man die Anmeldung zur App-Verifizierung in PHP? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn