Comment utiliser PHP Developer City pour réaliser un rappel par e-mail d'alarme d'inventaire de produits
Avec le développement rapide du commerce électronique, la gestion des centres commerciaux en ligne est devenue de plus en plus importante. Parmi eux, la gestion des stocks de produits constitue un lien important, car elle détermine si les commerçants peuvent répondre aux besoins des utilisateurs en temps opportun. Afin de mieux gérer l'inventaire, vous pouvez utiliser PHP Developer City pour implémenter des fonctions de rappel par e-mail d'alarme d'inventaire de produits. Cet article présentera comment utiliser PHP pour développer la ville et mettre en œuvre des rappels par courrier électronique d'alarme d'inventaire en écrivant du code.
1. Préparation
Avant de commencer à écrire du code, vous devez vous assurer que vous avez configuré un environnement de développement PHP avec une base de données MySQL et un serveur de messagerie SMTP.
2. Conception de la base de données
Tout d'abord, nous devons créer une base de données pour stocker les informations sur les produits et les données d'inventaire. Créez une base de données nommée « boutique » et créez-y deux tables « produits » et « stock ».
1. Le tableau "produits" est utilisé pour stocker les informations de base des produits, notamment l'identifiant, le nom du produit, le prix, etc. La structure de la table est la suivante :
CREATE TABLE products
(products
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(255) NOT NULL,
price
decimal(10,2) NOT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
2.表 "stock"用于存储商品的库存信息,包括商品id、库存数量等。表结构如下:
CREATE TABLE stock
(
id
int(11) NOT NULL AUTO_INCREMENT,
product_id
int(11) NOT NULL,
quantity
int(11) NOT NULL,
PRIMARY KEY (id
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(255) NOT NULL,
prix
decimal(10,2) NON NULL, CLÉ PRIMAIRE (id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
2. Tableau "stock "Utilisé pour stocker les informations sur l'inventaire des produits, y compris l'ID du produit, la quantité en stock, etc. La structure du tableau est la suivante :
CREATE TABLE stock
(
id
int(11) NOT NULL AUTO_INCREMENT,
product_id
int(11) NOT NULL,
quantité
int(11) NON NULL,
PRIMARY KEY (id
)
3. écriture
$servername = "localhost";
$username = "root";
$password = "";
$conn = new mysqli ($servername, $username, $password, $dbname);
die("连接失败: " . $conn->connect_error);
$low_stock_quantity. = 10; //Définir la quantité d'alarme d'inventaire
$sql = "SELECT products.name, stock.quantity FROM products JOIN stock ON products.id = stock.product_id WHERE stock.quantity < $low_stock_quantity";$result = $ conn-> ;query($sql);
if ($result->num_rows > 0) {
require_once 'PHPMailer/PHPMailerAutoload.php'; // 导入PHPMailer类 $mail = new PHPMailer(); $mail->isSMTP(); $mail->SMTPAuth = true; $mail->Host = "smtp.gmail.com"; // 设置SMTP服务器 $mail->Username = "your_email@gmail.com"; // 发件人邮箱 $mail->Password = "your_password"; // 发件人邮箱密码 $mail->SMTPSecure = "ssl"; $mail->Port = 465; $mail->setFrom("your_email@gmail.com", "E-commerce Shop"); $mail->addAddress("recipient_email@example.com"); // 收件人邮箱 $mail->isHTML(true); $mail->Subject = "商品库存报警"; $mail->Body = "以下商品库存低于设定值:
while ($row = $result->fetch_assoc()) { $mail->Body .= "商品名称:" . $row["name"] . ",当前库存:" . $row["quantity"] . "
} if ($mail->send()) { echo "邮件发送成功"; } else { echo "邮件发送失败:" . $mail->ErrorInfo; }
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!