Maison >base de données >tutoriel mysql >Comment utiliser MySQL et JavaScript pour implémenter une fonction de forum simple
Comment utiliser MySQL et JavaScript pour implémenter une fonction de forum simple
Introduction :
En tant que l'une des plateformes sociales les plus importantes sur Internet, le forum dispose de fonctions telles que l'enregistrement des utilisateurs, la publication, la réponse et l'affichage des publications. Cet article explique comment utiliser MySQL et JavaScript pour implémenter une fonction de forum simple et fournit des exemples de code spécifiques.
1. Préparation
1. Installez le serveur et le client MySQL et créez une base de données.
2. Créez un serveur Web, tel qu'Apache, Nginx, etc.
3. Créez une page HTML comme interface frontale du forum.
2. Conception de la base de données
Cette fonction de forum doit stocker les informations sur les utilisateurs, publier des informations et répondre. Nous concevons trois tables : la table des utilisateurs (utilisateurs), la table des publications (messages) et la table des réponses (commentaires).
1. Table des utilisateurs (users) :
Champs :
2. Table des publications (posts) :
Champs :
3. Table de réponse (commentaires) :
Champ :
3. Développement back-end
1. Créez une interface (register.php) pour traiter l'enregistrement des utilisateurs.
header('Content-Type: application/json');
$conn = mysqli_connect('localhost', 'username', 'password', 'database_name');
// Obtenez le devant -fin de transmission Entrez le nom d'utilisateur et le mot de passe
$username = $_POST['username'];
$password = $_POST['password'];
// Vérifiez si le nom d'utilisateur existe déjà
$query = "SELECT * FROM utilisateurs OÙ nom d'utilisateur = '$username'";
$result = mysqli_query($conn, $query);
if (mysqli_num_rows($result) > 0) {
// 用户名已存在 $response = [ 'status' => 'error', 'message' => 'Username already exists' ];
} else {
// 插入用户数据 $insertQuery = "INSERT INTO users (username, password) VALUES ('$username', '$password')"; mysqli_query($conn, $insertQuery); $response = [ 'status' => 'success', 'message' => 'Registration successful' ];
}
echo json_encode ($ réponse);
?>
2. Créez une interface pour publier des articles (create_post.php).
header('Content-Type: application/json');
$conn = mysqli_connect('localhost', 'username', 'password', 'database_name');
// Obtenez le devant -fin de transmission Titre du message entrant, contenu et identifiant d'utilisateur
$title = $_POST['title'];
$content = $_POST['content'];
$userId = $_POST['userId'];
/ / Insérer les données de la publication
$insertQuery = "INSERT INTO posts (title, content, userId) VALUES ($'title', '$content', '$userId')";
mysqli_query($conn, $insertQuery);
$response = [
'status' => 'success', 'message' => 'Post created successfully'
];
echo json_encode($response);
?>
3. Créez une interface pour répondre (create_comment.php).
header('Content-Type: application/json');
$conn = mysqli_connect('localhost', 'username', 'password', 'database_name');
// Obtenez le devant -fin de la transmission Contenu de la réponse entrante, identifiant de publication et identifiant d'utilisateur
$content = $_POST['content'];
$postId = $_POST['postId'];
$userId = $_POST['userId'];
// Insérer les données de réponse
$insertQuery = "INSERT INTO comments (content, postId, userId) VALUES ($'$content', '$postId', '$userId')";
mysqli_query($conn, $insertQuery);
$ réponse = [
'status' => 'success', 'message' => 'Comment created successfully'
];
echo json_encode($response);
?>
4. Développement front-end
1. ! & Lt;! Doctype html & gt;
& lt; tête & gt; gt; l & lt;/html & gt;
2. Page arrière du message (create_comment.html).
<title>论坛注册</title>
<h1>用户注册</h1> <form id="registerForm"> <label>用户名:</label> <input type="text" name="username" required> <br><br> <label>密码:</label> <input type="password" name="password" required> <br><br> <input type="submit" value="注册"> </form> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script> $(document).ready(function() { $('#registerForm').submit(function(event) { event.preventDefault(); var data = $(this).serialize(); $.ajax({ url: 'register.php', type: 'POST', data: data, success: function(response) { alert(response.message); window.location.href = 'login.html'; }, error: function(xhr, status, error) { alert(error); } }); }); }); </script>
Su mmaire :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!