Heim  >  Artikel  >  Backend-Entwicklung  >  Wie PHP+MySQL das Hinzufügen, Löschen, Ändern und Abfragen von Datenbanken implementiert

Wie PHP+MySQL das Hinzufügen, Löschen, Ändern und Abfragen von Datenbanken implementiert

PHPz
PHPzOriginal
2023-03-23 16:53:131561Durchsuche

PHP und MySQL sind die beliebtesten Technologien in der modernen Webentwicklung. Mithilfe dieser beiden Technologien können Entwickler dynamische Webanwendungen erstellen, die das Speichern und Abrufen von Daten umfassen. In diesem Artikel wird erläutert, wie Sie mithilfe von PHP und MySQL Vorgänge zum Hinzufügen, Löschen, Ändern und Abfragen in der Datenbank implementieren.

1. Umgebungskonfiguration

Bevor wir beginnen, müssen wir bestätigen, dass die Entwicklungsumgebung für PHP und MySQL konfiguriert wurde. Wenn nicht, installieren und konfigurieren Sie es bitte selbst. Um den Code zu testen, nutzen wir die lokale Entwicklungsumgebung und gehen davon aus, dass Sie den Webserver, PHP und MySQL bereits lokal eingerichtet haben.

2. Erstellen Sie die Datenbank

Zuerst müssen wir die Datenbank erstellen. Bitte melden Sie sich mit dem MySQL-Client am Server an und führen Sie den folgenden Befehl in der Konsole aus:

CREATE DATABASE test;

Dadurch wird eine Datenbank mit dem Namen „test“ erstellt. Als nächstes müssen wir zu dieser Datenbank wechseln:

USE test;

Als nächstes erstellen wir eine Datentabelle namens „Benutzer“, die die Informationen des Benutzers enthält.

CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
email VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Dadurch wird eine Datentabelle namens „Benutzer“ mit vier Feldern erstellt: ID, Name, E-Mail und Passwort. id ist eine automatisch inkrementierende Ganzzahl, die als eindeutige Kennung für den Benutzer verwendet wird. In den Feldern „Name“ und „E-Mail“ werden jeweils der Name und die E-Mail-Adresse des Benutzers gespeichert. Im Passwortfeld wird das Passwort des Benutzers gespeichert, das gehasht und gespeichert werden muss. Das Feld „created_at“ wird zum Speichern der Erstellungszeit des Benutzerkontos verwendet.

3. Datenbankverbindung konfigurieren

In PHP verwenden wir die MySQLi-Erweiterung, um unsere Datenbankverbindungen zu verwalten. Zuerst müssen wir einige Konstanten definieren, um die Konfigurationswerte der Datenbankverbindung zu speichern. In diesem Beispiel stellen wir mit dem Benutzernamen root, einem leeren Passwort und dem Datenbanknamen test eine Verbindung zum lokalen MySQL-Server her:

define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'test');

Als nächstes verwenden wir die Funktion mysqli_connect(), um eine Verbindung zum Datenbankserver herzustellen:

$mysqli = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);

Wenn verbunden Bei einem Fehler wird eine Fehlermeldung zurückgegeben. Bei Erfolg können die folgenden vier grundlegenden Datenbankvorgänge ausgeführt werden: Erstellen, Lesen, Aktualisieren und Löschen.

4. Operationen zum Hinzufügen, Löschen, Ändern und Abfragen implementieren

  1. Zur Datenbank hinzufügen

Die folgende Funktion wird verwendet, um Benutzerinformationen zur Datentabelle hinzuzufügen:

function create_user($name, $email, $password) {
global $mysqli;

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

$stmt = $mysqli->prepare("INSERT INTO users (name, email, password) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $name, $email, $hashed_password);
$stmt->execute();

return $mysqli->insert_id;
}

Diese Funktion erfordert drei Parameter: Benutzername, E-Mail-Adresse und Passwort. Zunächst wird das Passwort mithilfe der Funktion „password_hash()“ gehasht. Verwenden Sie dann die Funktion „prepare()“, um eine SQL-Abfrage vorzubereiten, die den Benutzernamen, die E-Mail-Adresse und das gehashte Passwort zur Datentabelle hinzufügt. Die Funktion bind_param() bindet Parameter an Abfrageplatzhalter und führt die Abfrage aus. Verwenden Sie abschließend die Funktion insert_id(), um die eindeutige Kennung des neuen Benutzers abzurufen.

  1. Daten aus der Datenbank abrufen

Die folgende Funktion ruft die Benutzerinformationen in der Datenbank über die Benutzer-ID ab:

function get_user($id) {
global $mysqli;

$stmt = $mysqli->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();

$result = $stmt->get_result();

if ($result->num_rows === 0) {
    return null;
}

return $result->fetch_assoc();
}

Diese Funktion erfordert einen Parameter: die eindeutige Kennung des Benutzers. Es verwendet die Funktion Prepare(), um eine SQL-Abfrage vorzubereiten, die Benutzerinformationen in der Datentabelle auswählt, die mit der angegebenen ID übereinstimmen. Die Funktion bind_param() bindet Parameter an Abfrageplatzhalter und führt die Abfrage aus. Verwenden Sie dann die Funktion get_result(), um die Abfrageergebnisse abzurufen und ein assoziatives Array (wenn der Datensatz gefunden wird) oder Null (wenn der Datensatz nicht gefunden wird) zurückzugeben.

  1. Datenbank aktualisieren

Die folgende Funktion wird verwendet, um Benutzerinformationen in der Datenbank zu aktualisieren:

function update_user($id, $name, $email, $password) {
global $mysqli;

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

$stmt = $mysqli->prepare("UPDATE users SET name = ?, email = ?, password = ? WHERE id = ?");
$stmt->bind_param("sssi", $name, $email, $hashed_password, $id);
$stmt->execute();

return $stmt->affected_rows === 1;
}

Diese Funktion erfordert vier Parameter: Benutzer-ID, Benutzername, E-Mail-Adresse und Passwort. Zunächst wird das Passwort mithilfe der Funktion „password_hash()“ gehasht. Verwenden Sie dann die Funktion Prepare(), um eine SQL-Abfrage vorzubereiten, die die Benutzerinformationen in der Datentabelle aktualisiert, die der angegebenen ID entsprechen. Die Funktion bind_param() bindet Parameter an Abfrageplatzhalter und führt die Abfrage aus. Überprüfen Sie abschließend mit der Funktion Affect_rows(), ob die Aktualisierung erfolgreich war und geben Sie einen booleschen Wert zurück.

  1. Daten aus der Datenbank löschen

Die folgende Funktion wird verwendet, um Benutzerinformationen aus der Datenbank zu löschen:

function delete_user($id) {
global $mysqli;

$stmt = $mysqli->prepare("DELETE FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();

return $stmt->affected_rows === 1;
}

Diese Funktion erfordert einen Parameter: Benutzer-ID. Es verwendet die Funktion Prepare(), um eine SQL-Abfrage vorzubereiten, die Benutzerinformationen, die der angegebenen ID entsprechen, aus der Datentabelle löscht. Die Funktion bind_param() bindet Parameter an Abfrageplatzhalter und führt die Abfrage aus. Überprüfen Sie abschließend mit der Funktion Affect_rows(), ob der Löschvorgang erfolgreich war und geben Sie einen booleschen Wert zurück.

5. Debugging und Optimierung

In jedem Webentwicklungsprozess sind Debugging und Optimierung sehr wichtig. Um unseren Code zu debuggen, können wir die Funktionen error_reporting() und ini_set() verwenden. Mit diesen Funktionen werden Fehlerberichtsebenen und Einstellungen für die Anzeige von Fehlermeldungen festgelegt. Um unseren Code zu optimieren, sollten wir verkettete Zeichenfolgen in Datenbankabfragen so weit wie möglich vermeiden und stattdessen die Funktionen „prepare()“ und „bind_param()“ verwenden.

6. Zusammenfassung

Durch die Verwendung von PHP und MySQL können wir problemlos Webanwendungen mit Datenspeicher- und -abruffunktionen erstellen. In diesem Artikel haben wir gezeigt, wie Sie diese beiden Technologien verwenden, um grundlegende Datenbankoperationen zu implementieren: Erstellen, Lesen, Aktualisieren und Löschen. Durch die Implementierung des obigen Codes erfahren Sie, wie Sie eine Verbindung zur Datenbank herstellen, Datenbanktabellen erstellen sowie Benutzerdaten hinzufügen, lesen, aktualisieren und löschen. Diese Fähigkeiten werden Ihnen bei Ihren zukünftigen Webentwicklungsjobs sehr nützlich sein.

Das obige ist der detaillierte Inhalt vonWie PHP+MySQL das Hinzufügen, Löschen, Ändern und Abfragen von Datenbanken implementiert. 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