Maison  >  Article  >  développement back-end  >  Gestion des stocks en temps réel et fonctions d'alerte précoce à l'aide de PHP et MQTT

Gestion des stocks en temps réel et fonctions d'alerte précoce à l'aide de PHP et MQTT

WBOY
WBOYoriginal
2023-07-11 11:46:36986parcourir

Utilisez PHP et MQTT pour obtenir des fonctions de gestion des stocks en temps réel et d'alerte précoce

1 Introduction au contexte
La gestion des stocks est une partie très importante des opérations commerciales modernes. Des informations précises sur les stocks peuvent aider les entreprises à comprendre les quantités et les modifications des produits en temps réel, leur permettant ainsi de prendre des décisions d'achat et de vente plus précises. Dans le même temps, la fonction d'avertissement d'inventaire peut prédire à l'avance les ruptures de stock et aider les entreprises à éviter des conséquences négatives telles que des ruptures de stock.

2. Sélection de la technologie
Cet article utilise PHP comme langage de programmation côté serveur et le combine avec le protocole MQTT pour réaliser une gestion des stocks en temps réel et des fonctions d'alerte précoce. En tant que langage de développement Web couramment utilisé, PHP est facile à apprendre et à utiliser ; le protocole MQTT est un protocole de messagerie léger adapté aux scénarios d'Internet des objets et d'applications mobiles.

3. Implémentation de la fonction de gestion des stocks
1. Conception de la base de données
Tout d'abord, créez une base de données nommée inventaire et créez une table de données nommée produits pour stocker les informations sur l'inventaire des produits. Le tableau de données comprend les champs suivants :

  • id : ID du produit
  • nom : nom du produit
  • quantité : quantité du produit

2. Conception et développement de la page
Créez un fichier nommé index.php pour afficher les informations d'inventaire. Dans ce fichier, nous pouvons répertorier les noms et les quantités de tous les produits et fournir un formulaire permettant à l'utilisateur de saisir les noms et les quantités des produits.

3. Connexion à la base de données et lecture des données
Dans le fichier PHP, nous devons nous connecter à la base de données et lire les informations d'inventaire des produits à partir de la base de données. Voici un exemple de code pour se connecter à la base de données et lire les données :

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "inventory";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 从数据库中读取产品的库存信息
$sql = "SELECT id, name, quantity FROM products";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table>";
    echo "<tr><th>产品ID</th><th>产品名称</th><th>产品数量</th></tr>";
  
    while($row = $result->fetch_assoc()) {
        echo "<tr><td>".$row["id"]."</td><td>".$row["name"]."</td><td>".$row["quantity"]."</td></tr>";
    }
  
    echo "</table>";
} else {
    echo "暂无产品信息";
}

$conn->close();
?>

IV. Implémentation de la fonction d'avertissement d'inventaire
1. Définir le seuil d'avertissement d'inventaire
Afin d'implémenter la fonction d'avertissement d'inventaire, nous devons définir un inventaire. seuil d’avertissement. Lorsque le stock d'un produit tombe en dessous de ce seuil, le système émet un message d'alerte précoce.

2. Envoyer un message MQTT
Dans le fichier PHP, nous pouvons utiliser le protocole MQTT pour envoyer des messages d'alerte. Voici un exemple de code pour envoyer des messages MQTT :

<?php
require("phpMQTT.php");

$server = 'localhost';     //MQTT服务器地址
$port = 1883;                     //MQTT服务器端口号
$username = 'username';   //MQTT用户名
$password = 'password';   //MQTT密码

$mqtt = new phpMQTT($server, $port, "PHP MQTT Client");
if (!$mqtt->connect(true, NULL, $username, $password)) {
    exit(1);
}

$topic = 'inventory/alert';      //MQTT主题
$message = '产品A库存不足,请及时补货!';  //预警消息

// 发布MQTT消息
$mqtt->publish($topic, $message, 0, false);

$mqtt->close();
?>

3. Abonnez-vous aux messages MQTT
Afin de recevoir les messages d'alerte MQTT, nous devons nous abonner au sujet MQTT correspondant dans un autre fichier PHP et traiter les messages reçus. Voici un exemple de code pour s'abonner aux messages MQTT :

<?php
require("phpMQTT.php");

$server = 'localhost';     //MQTT服务器地址
$port = 1883;                     //MQTT服务器端口号
$username = 'username';   //MQTT用户名
$password = 'password';   //MQTT密码

$mqtt = new phpMQTT($server, $port, "PHP MQTT Client");
if (!$mqtt->connect(true, NULL, $username, $password)) {
    exit(1);
}

$topic = 'inventory/alert';      //MQTT主题

// 定义接收消息的回调函数
function messageReceived($topic, $message) {
    echo "接收到预警消息:[{$topic}] {$message}<br/>";
}

// 订阅MQTT主题并设置接收消息的回调函数
$mqtt->subscribe($topic, function($topic, $message){
    messageReceived($topic, $message);
}, 0);

while ($mqtt->proc()) { }

$mqtt->close();
?>

5. Résumé
En utilisant les protocoles PHP et MQTT, nous avons obtenu des fonctions de gestion des stocks en temps réel et d'alerte précoce. Le protocole MQTT peut être utilisé pour publier et s'abonner à des messages en temps réel, et envoyer en temps opportun des messages d'avertissement lorsque l'inventaire tombe en dessous du seuil d'avertissement. Cela peut améliorer l'efficacité de la gestion des stocks des entreprises et éviter des problèmes tels que les ruptures de stock. Dans le même temps, grâce à la conception et au fonctionnement de la base de données, un enregistrement et une requête précis des informations d'inventaire peuvent être obtenus. Dans les applications réelles, le code peut être modifié et optimisé en fonction de besoins spécifiques pour répondre à des scénarios commerciaux plus spécifiques.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn