PHP implementiert die Bearbeitungs- und Löschfunktionen von Frage-Antworten auf der Wissens-Frage- und Antwort-Website.

WBOY
Freigeben: 2023-07-01 15:28:02
Original
993 Leute haben es durchsucht

PHP implementiert die Bearbeitungs- und Löschfunktionen von Fragen-Antworten auf der Wissens-Q&A-Website.

Auf der Wissens-Q&A-Website müssen Benutzer häufig veröffentlichte Fragen und Antworten bearbeiten und löschen, um die Qualität von Fragen und Antworten sicherzustellen. PHP ist eine häufig verwendete Back-End-Programmiersprache mit leistungsstarken Funktionen zur Verarbeitung von Daten und Datenbankoperationen und eignet sich daher sehr gut für die Implementierung dieser Funktionen. In diesem Artikel wird erläutert, wie Sie mit PHP die Funktionen zum Bearbeiten und Löschen von Fragen und Antworten auf der Wissens-Q&A-Website implementieren.

1. Datenbankdesign

Zuerst müssen wir eine Datenbank entwerfen, um Fragen- und Antwortinformationen zu speichern. Angenommen, wir müssen den Titel, den Inhalt und die Veröffentlichungszeit der Frage sowie den Inhalt und die Veröffentlichungszeit der Antwort speichern. Wir können eine Tabelle mit dem Namen „Fragen“ erstellen, um die Informationen zu den Fragen zu speichern, und eine Tabelle mit dem Namen „Antworten“, um die Informationen zu den Antworten zu speichern. Das Design der

Fragentabelle ist wie folgt:

CREATE TABLE-Fragen (

id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
Nach dem Login kopieren

); Das Design der

Antwortentabelle ist wie folgt:

CREATE TABLE-Antworten (

id INT AUTO_INCREMENT PRIMARY KEY,
question_id INT NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (question_id) REFERENCES questions(id) ON DELETE CASCADE
Nach dem Login kopieren

);

In der In der Antworttabelle verwenden wir den Fremdschlüssel „question_id“, um die Antwort mit der Frage in Beziehung zu setzen. Und wenn die Frage über die Einstellung ON DELETE CASCADE gelöscht wird, werden auch die damit verbundenen Antworten automatisch gelöscht.

2. Implementieren Sie die Frage- und Antwortbearbeitungsfunktion

In PHP können wir den vom Benutzer übermittelten Frage- und Antwortinhalt über die Daten der HTTP-Anfrage abrufen. Bearbeiten Sie dann die Fragen und Antworten, indem Sie eine Verbindung zur Datenbank herstellen und SQL-Anweisungen ausführen.

<?php
// 获取用户提交的问题内容
$title = $_POST['title'];
$content = $_POST['content'];

// 连接数据库
$pdo = new PDO('mysql:host=localhost;dbname=your_database_name', 'your_username', 'your_password');

// 编辑问题
$id = $_POST['question_id'];
$stmt = $pdo->prepare("UPDATE questions SET title=?, content=? WHERE id=?");
$stmt->execute([$title, $content, $id]);

// 跳转回问题详情页
header("Location: question.php?id=$id");
exit;
?>
Nach dem Login kopieren

Im obigen Code rufen wir zuerst den Titel und den Inhalt der vom Benutzer übermittelten Frage ab, verwenden dann die Methode „prepare“, um die SQL-Anweisung vorzubereiten, und verwenden die Methode „execute“, um die SQL-Anweisung auszuführen und den Inhalt der übermittelten Frage zu aktualisieren vom Benutzer in die Datenbank übertragen. Verwenden Sie abschließend die Header-Funktion, um den Benutzer zur Seite mit den Problemdetails weiterzuleiten.

3. Implementieren Sie die Funktion zum Löschen von Fragen und Antworten.

Ähnlich wie beim Bearbeiten von Fragen können wir auch die ID der Frage oder Antwort erhalten, die der Benutzer über die per HTTP angeforderten Daten löschen möchte. Führen Sie dann den Löschvorgang durch, indem Sie eine Verbindung zur Datenbank herstellen und die SQL-Anweisung ausführen.

<?php
// 获取用户提交的问题或答案 ID
$id = $_GET['id'];

// 连接数据库
$pdo = new PDO('mysql:host=localhost;dbname=your_database_name', 'your_username', 'your_password');

if (isset($_GET['question'])) {
    // 删除问题及其关联的答案
    $stmt = $pdo->prepare("DELETE FROM questions WHERE id=?");
    $stmt->execute([$id]);
} else {
    // 删除答案
    $stmt = $pdo->prepare("DELETE FROM answers WHERE id=?");
    $stmt->execute([$id]);
}

// 跳转回问题详情页
header("Location: question.php");
exit;
?>
Nach dem Login kopieren

Im obigen Code bestimmen wir zunächst, ob der Benutzer eine Frage oder eine Antwort löschen möchte, und bereiten dann die entsprechende SQL-Anweisung entsprechend verschiedenen Situationen vor und führen sie aus. Schließlich wird die Header-Funktion auch verwendet, um den Benutzer zurück zur Seite mit den Fragendetails weiterzuleiten.

Fazit

Es ist sehr einfach, die Funktionen zum Bearbeiten und Löschen von Fragen in der Wissens-Frage- und Antwort-Website über PHP zu implementieren. Sie müssen lediglich eine Verbindung zur Datenbank herstellen und die entsprechende SQL-Anweisung ausführen. Ich hoffe, dieser Artikel hilft Ihnen zu verstehen, wie Sie PHP verwenden, um diese Funktionen zu erreichen. Wenn Sie noch Fragen oder Zweifel haben, können Sie die offizielle PHP-Dokumentation durchsehen oder auf andere verwandte Tutorials verweisen. Ich wünsche Ihnen gute Ergebnisse in Ihrer Entwicklung!

Das obige ist der detaillierte Inhalt vonPHP implementiert die Bearbeitungs- und Löschfunktionen von Frage-Antworten auf der Wissens-Frage- und Antwort-Website.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage