`` `php
Php
// Datenbankverbindungsdetails
$ servername ="localhost";
$ userername ="userername";
$ password ="Passwort";
$ dbname ="database_name";
// Verbindung erstellen
$ conn =new MySQLI ($ sservername, $ userername, $ password, $ dbname);
// Verbindung überprüfen
if ($ conn-> connect_error) {
Die ("Verbindung fehlgeschlagen:". $ conn-> connect_error);
}
// Die angemeldete Benutzer-ID des Benutzers erhalten (vorausgesetzt, Sie haben eine Sitzungsvariable)
$ userId =$ _Session ['user_id'];
// Die SQL -Abfrage vorbereiten und ausführen
$ sql ="Select * von Benutzern wobei id =?";
$ stmt =$ conn-> prepe ($ sql);
$ stmt-> bind_param ("i", $ userId);
$ stmt-> execute ();
// das Ergebnis abrufen
$ result =$ stmt-> get_result ();
// die Daten verarbeiten
if ($ result-> num_rows> 0) {
// Erhalten Sie die Benutzerdaten als assoziatives Array
$ userData =$ result-> fetch_assoc ();
// Zugriff auf bestimmte Datenfelder zugreifen
$ userername =$ userData ['userername'];
$ mail =$ userData ['E -Mail'];
// ...
// etwas mit den Daten mach
Echo "Willkommen". $ username. "!";
} anders {
echo "Benutzer nicht gefunden";
}
// Schließen Sie die Anweisung und Verbindung
$ stmt-> close ();
$ conn-> close ();
?>
`` `
Erläuterung:
1. Datenbankverbindung: Der Code stellt zunächst eine Verbindung zu Ihrer SQL -Datenbank mit der Erweiterung "MySQLI" her. Ersetzen Sie die Platzhalterwerte durch Ihre tatsächlichen Datenbankanmeldeinformationen.
2. Benutzer -ID: Es wird davon ausgegangen, dass Sie eine Sitzungsvariable "$ _session [" user_id "]" haben, in der die angemeldete Benutzer-ID gespeichert ist. Dies wird normalerweise während des Anmeldesvorgangs festgelegt.
3. Vorbereitete Anweisung: Es verwendet eine vorbereitete Anweisung, um SQL -Injektionsanfälligkeiten zu verhindern. Die Variable "$ sql`" enthält die Abfragevorlage und `$ stmt-> bind_param ()` bindet die Benutzer-ID als Parameter.
4. Führen und abrufen: Der $ stmt-> execute () `führt die Abfrage aus, und` $ stmt-> get_result () `ruft das Ergebnissatz ab.
5. Datenverarbeitung:
- Es wird überprüft, ob die Abfrage Zeilen mit `$ result-> num_rows` zurückgegeben hat.
- Wenn Zeilen vorhanden sind, holt es die Benutzerdaten als assoziatives Array mit `$ result-> fetch_assoc ()` ab.
- Sie können dann mit ihren Spaltennamen auf bestimmte Datenfelder zugreifen (z. B. "$ userData [" Benutzername "]").
6. Verbindungen schließen: Es ist wichtig, die vorbereitete Anweisung und die Datenbankverbindung zur Freigabe von Ressourcen zu schließen.
Wichtige Hinweise:
- Sitzungsverwaltung: Stellen Sie sicher, dass Sie über ein sicheres Sitzungsverwaltungssystem verfügen, um den Benutzeranmeldestatus des Benutzers beizubehalten.
- Datenbankstruktur: Dieser Code setzt eine "Benutzer" -Tabelle mit einer `id` -Spalte an. Passen Sie die Tabellen- und Spaltennamen entsprechend für Ihre spezifische Datenbank an.
- Sicherheit: Verwenden Sie immer vorbereitete Aussagen, um SQL -Injektionsangriffe zu verhindern. Vermeiden Sie es, Benutzereingaben direkt in SQL -Abfragen einzubetten.
- Fehlerbehandlung: Implementieren Sie robuste Fehlerbehandlungsmechanismen, um alle Datenbankverbindungsfehler oder Abfrageberechtigungsfehler zu erfassen.
- Datenschutz: Stellen Sie sicher, dass Sie nur Daten abrufen, die für die spezifische Funktionalität erforderlich sind, und entsprechen den Datenschutzbestimmungen.