Heim >Backend-Entwicklung >PHP-Problem >So implementieren Sie ein Viele-zu-Eins-Adressbuch in PHP
Die Methode zum Implementieren eines Viele-zu-Eins-Adressbuchs in PHP ist: 1. Erstellen Sie zwei Datenbanktabellen, eine zum Speichern von Benutzerinformationen und die andere zum Speichern von Kontaktinformationen. 2. Fügen Sie dem Kontakttabellenfeld einen Fremdschlüssel hinzu. Zeigen Sie auf den Primärschlüssel in der Benutzertabelle, um mehreren Kontakten zu entsprechen.
Das Betriebssystem dieses Tutorials: Windows 10-System, PHP8.1.3-Version, Dell G3-Computer.
PHP kann Viele-zu-Eins-Adressbücher mithilfe von Datenbankoperationen, objektorientierter Programmierung usw. implementieren. Many-to-one bezieht sich auf mehrere Kontakte, die einem Benutzer (Adressbuchbesitzer) entsprechen.
Die Implementierungsmethode lautet: Erstellen Sie zwei Datenbanktabellen. Eine dient zum Speichern von Benutzerinformationen, einschließlich Benutzername, Kennwort usw., und die andere dient zum Speichern von Kontaktinformationen, einschließlich Name, Telefonnummer usw. Fügen Sie der Tabelle „Kontakte“ ein Fremdschlüsselfeld hinzu, das auf den Primärschlüssel in der Tabelle „Benutzer“ verweist. Auf diese Weise kann ein Benutzer mehreren Kontakten entsprechen.
Vorteile:
kann Kontaktinformationen einfach verwalten und pflegen.
kann die Datensicherheit verbessern und verhindern, dass andere Benutzer auf Kontaktinformationen zugreifen oder diese manipulieren.
Einfach zu erweitern und zu optimieren.
Codebeispiel: Der folgende Code zeigt, wie PDO (PHP Data Objects) verwendet wird, um grundlegende Viele-zu-Eins-Adressbuchfunktionen zu implementieren.
```php // 创建数据库连接 $db = new PDO('mysql:host=localhost;dbname=mydb;charset=utf8', 'username', 'password'); // 新增用户 $stmt = $db->prepare("INSERT INTO users (username, password) VALUES (?, ?)"); $username = 'user1'; $password = 'pass1'; $stmt->execute([$username, $password]); $user_id = $db->lastInsertId(); // 获取新用户的ID // 新增联系人 $stmt = $db->prepare("INSERT INTO contacts (name, phone, user_id) VALUES (?, ?, ?)"); $name = 'contact1'; $phone = '1234567890'; $stmt->execute([$name, $phone, $user_id]); // 查询联系人 $stmt = $db->prepare("SELECT * FROM contacts WHERE user_id = ?"); $user_id = 1; // 假设要查询用户ID为1的联系人 $stmt->execute([$user_id]); $contacts = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($contacts as $contact) { echo "Name: {$contact['name']}, Phone: {$contact['phone']}\n"; } ```
Das obige ist der detaillierte Inhalt vonSo implementieren Sie ein Viele-zu-Eins-Adressbuch in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!