Avec le développement du secteur de la restauration, de plus en plus de restaurants ont commencé à fournir des services de réservation et de commande, ce qui offre non seulement aux clients une expérience culinaire plus pratique, mais offre également aux restaurants une méthode de gestion plus ordonnée et efficace. Cet article explique comment utiliser PHP pour développer la fonction de commande de réservation du système de commande de nourriture.
1. La structure de base de la fonction de réservation et de commande
La structure de base de la fonction de réservation et de commande comprend deux parties principales : le système de réservation et le système de commande. Le système de réservation est principalement responsable de la gestion des informations de réservation des clients, y compris les réservations de tables, la gestion des informations client, etc., tandis que le système de commande est principalement responsable des opérations de commande des clients, de la gestion des plats, etc. ;
2. Implémentation du système de réservation
Créer des tables de base de données : réservation, client, table
① table de réservation
id : clé primaire auto-croissante
customer_id : clé étrangère, associée à l'identifiant champ de la table client
table_id : clé étrangère, le champ id de la table associée table
reservation_time : heure de réservation
status : statut de la réservation, 0 signifie non utilisé, 1 signifie utilisé
② table client
id : clé primaire à incrémentation automatique
nom : nom du client
téléphone : numéro de téléphone mobile du client
e-mail : adresse e-mail du client
③ table table
id : clé primaire auto-croissante
table_number : numéro de table
table_name : nom de la table
capacité : capacité de la table
Dans le système de réservation, des fonctions telles que la réservation de tables et l'interrogation de l'état des tables doivent être implémentées.
(1) Réservation d'une table
Nous prenons ici comme exemple une nouvelle réservation Avant d'effectuer une réservation, vous devez d'abord déterminer si la table a été réservée, déterminer si la réservation est réussie et renvoyer les informations correspondantes.
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;
}
$reservation_time = $_POST['reservation_time'];
$customer_name = $_POST['customer_name'];
$customer_phone = $_POST['customer_phone'];
$table_id = $_POST['table_id' ];
$sql_check = "SELECT * FROM réservation WHERE table_id='$table_id' AND reservation_time='$reservation_time'";
$result_check = mysqli_query($conn, $sql_check);
if (mysqli_num_rows($result_check) > 0) {
echo 'La table a été réservée à ce moment, veuillez en choisir une autre. ';
} else {
$sql_customer = "INSERT INTO customer (name, phone) VALUES ("$customer_name', '$customer_phone')";
mysqli_query($conn, $sql_customer);
$customer_id = mysqli_insert_id($ conn);
$sql_reservation = "INSÉRER DANS la réservation (customer_id, table_id, booking_time, status) VALUES ($'$customer_id', '$table_id', '$reservation_time', 0)";
mysqli_query($conn, $sql_reservation) ;
echo 'Réservation réussie. ';
}
mysqli_close($conn);
?>
(2) Interrogation de l'état de la table
L'interrogation de l'état de la table peut être réalisée en interrogeant le champ d'état dans la table de réservation, 0 signifie non utilisé, 1 moyens utilisés.
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;
}
$table_id = $_POST['table_id'];
$reservation_time = $_POST['reservation_time'];
$sql_check = "SELECT * FROM réservation WHERE table_id='$table_id' AND reservation_time='$ booking_time'";
$result_check = mysqli_query($conn, $sql_check);
if (mysqli_num_rows($result_check) > 0) {
$row = mysqli_fetch_assoc($result_check);
$status = $row['status '];
if ($status == 0) {
echo '该餐桌未被预约。';
} else {
echo '该餐桌已被预约。';
}
} else {
echo 'La table n'a pas été réservée. ';
}
mysqli_close($conn);
?>
3. Mise en œuvre du système de commande
Dans le système de commande, des fonctions telles que la gestion des plats, la gestion des commandes et le paiement doivent être implémentées.
Créer des tables de base de données : plat, commande
① table de plat
id : clé primaire auto-croissante
dish_name : nom du plat
prix : prix du plat
description : description du plat
image : Dish Picture
② order table
id : clé primaire auto-croissante
customer_id : clé étrangère, associée au champ id de la table client
table_id : clé étrangère, associée au champ id de la table table
dish_info : détails de la commande
status : statut de la commande, 0 signifie incomplet, 1 signifie terminé
order_time : heure de la commande
total_price : prix total de la commande
La gestion des plats comprend des opérations telles que l'ajout, la modification, et supprimer des plats.
(1) Plats nouvellement ajoutés
Voici les nouveaux plats à titre d'exemple.
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;
}
$dish_name = $_POST['dish_name'];
$price = $_POST['price'];
$description = $_POST['description'];
$image = $_POST['image' ];
$sql = "INSERT INTO plat (nom_plat, prix, description, image) VALEURS ('$nom_plat', $prix, '$description', '$image')";
if (mysqli_query($conn, $sql)) {
echo "Plat ajouté avec succès.";
} else {
echo "Erreur : " . ?>
Voici un exemple de modification du prix d'un plat.
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;}
$id = $_POST['id'];
$price = $_POST['price'];
if (mysqli_query($conn, $sql)) {
} else {
echo "Erreur : " . >
(3) Suppression de plats
Voici un exemple de suppression de plats.
}
$id = $_POST['id'];
$sql = "DELETE FROM Dish WHERE id=$id";
if (mysqli_query($conn, $sql)) {
echo "dish Suppression réussie. ";
} else {
}
mysqli_close($conn);
?>
Gestion des commandes
(1) Nouvelle commande
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;}
$table_id = $_POST['table_id'];
$customer_id = $_POST['customer_id'];$dish_info = $_POST['dish_info'];
$total_price = $_POST['total_price' ];
$sql = "INSERT INTO order
(customer_id, table_id, Dish_info, status, order_time, total_price) VALEURS ('$customer_id', '$table_id', '$dish_info', 0, now(), $total_price)";
echo "La commande a été ajoutée avec succès ";
} else {
echo "Erreur : " . mysqli_error($conn) ;
}
mysqli_close($conn);order
(customer_id, table_id, dish_info, status, order_time, total_price) VALUES ('$customer_id', '$table_id', '$dish_info', 0, now(), $total_price)";
if (mysqli_query($conn, $sql)) {
echo "订单添加成功。";
} else {
echo "Error: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
(2)订单修改
此处以修改订单状态为例。
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
$id = $_POST['id'];
$status = $_POST['status'];
$sql = "UPDATE order
SET status=$status WHERE id=$id";
if (mysqli_query($conn, $sql)) {
echo "订单修改成功。";
} else {
echo "Error: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
(3)订单删除
此处以删除订单为例。
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
$id = $_POST['id'];
$sql = "DELETE FROM order
?>
(2) Modification de la commande
Voici un exemple de modification du statut de la commande.
$conn = mysqli_connect("localhost", "root", "root", "test_db");
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error()) ;
$status = $_POST['status'];
🎜$sql = "UPDATEorder
SET status=$status WHERE id =$id";🎜🎜if (mysqli_query($conn, $sql)) {🎜 echo "Commande modifiée avec succès ";🎜} else {🎜 echo "Erreur : " . mysqli_error($conn);🎜}🎜🎜mysqli_close. ($conn);🎜?>🎜🎜(3) Suppression de commande🎜🎜Voici un exemple de suppression de commande. 🎜🎜order WHERE id=$id";🎜🎜if (mysqli_query($conn, $sql )) {🎜 echo "Commande supprimée avec succès.";🎜} else {🎜 echo "Erreur : " 🎜🎜Résumé🎜🎜 La réalisation de la fonction de réservation et de commande nécessite la combinaison du système de réservation et du système de commande. Le système de réservation est principalement responsable de la gestion des informations de réservation du client, tandis que le système de commande est principalement responsable de l'opération de commande du client, de la gestion des plats, etc. . Dans le développement PHP, ces fonctions peuvent être réalisées en concevant la base de données et en utilisant les fonctions PHP pertinentes. Dans le même temps, une attention particulière doit être accordée à la sécurité des données et à l'expérience utilisateur pour rendre la fonction de réservation et de commande plus complète. 🎜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!