Maison >développement back-end >tutoriel php >Comment utiliser PHP pour développer un système de gestion des stocks de matières premières prenant en charge plusieurs entrepôts
Comment utiliser PHP pour développer un système de gestion des stocks de produits prenant en charge plusieurs entrepôts
Introduction :
La gestion des stocks de matières premières est une partie très importante des secteurs du commerce électronique, de la vente au détail et de l'entreposage. Le système de gestion des stocks de produits multi-entrepôts peut mieux prendre en charge l'allocation, la surveillance et la gestion des stocks entre plusieurs entrepôts. Dans cet article, nous présenterons comment utiliser le langage PHP pour développer un système de gestion des stocks de produits prenant en charge plusieurs entrepôts et joindrons des exemples de code pertinents.
Table 1 : Table de produits | ||
---|---|---|
id | name | description |
1 | Product 1 | Description informations du produit 1 |
2 | Produit 2 | Informations de description du produit 2 |
... | ... | ... |
Tableau 2 : Table d'entrepôt | ||
---|---|---|
id | nom | description |
1 | Entrepôt 1 | Description de l'entrepôt 1 |
2 | Entrepôt 2 | Description de l'entrepôt 2 |
... | .. | ... |
Formulaire 3 : Tableau des stocks | |||
---|---|---|---|
stock_id | product_id | stock | warehouse_id |
1 | 1 | 100 | 1 |
2 | 1 | 200 | 2 |
... | ... | ... | ... |
In dieser Datenbankstruktur wird die Produkttabelle zum Speichern des Namens und der Beschreibungsinformationen des Produkts verwendet. Die Lagertabelle dient zum Speichern des Namens und der Beschreibungsinformationen des Lagers Informationen zum Produkt in jedem Lager, wobei stock_id der Lagerbestand ist. Zeichnen Sie die eindeutige Kennung auf, product_id ist die zugehörige Produkt-ID, stock ist die Lagerbestandsmenge und Warehouse_id ist die zugehörige Lager-ID.
2.1 Verbindung zur Datenbank herstellen:
Zuerst müssen wir mithilfe von PHP-Code eine Verbindung zur MySQL-Datenbank herstellen.
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $ username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo „Verbindung erfolgreich“;
?>
Im obigen Code müssen Sie „your_username“ ändern. , Ersetzen Sie „Ihr_Passwort“ und „Ihre_Datenbank“ durch Ihren eigenen Datenbank-Benutzernamen, Ihr eigenes Passwort und Ihren Datenbanknamen.
2.2 Produktliste und Lagerlistenanzeige:
Als nächstes können wir Code schreiben, um die Datenbank abzufragen und die Produktliste und Lagerliste anzuzeigen:
$sql = "SELECT * FROM Produkttabelle";<code>商品表
";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) { echo "商品ID: " . $row["id"]. " 商品名称: " . $row["name"]. " 商品描述: " . $row["description"]. "<br>"; }
} else {
echo "0 结果";
}
$sql = "SELECT * FROM 仓库表
";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) { echo "仓库ID: " . $row["id"]. " 仓库名称: " . $row["name"]. " 仓库描述: " . $row["description"]. "<br>"; }
} else {
echo "0 结果";
}
$conn->close();
?>
3.1 库存查询:
以下是一个简单的库存查询的代码示例:
$sql = "SELECT * FROM 库存表
";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) { echo "库存ID: " . $row["stock_id"]. " 商品ID: " . $row["product_id"]. " 库存数量: " . $row["stock"]. " 仓库ID: " . $row["warehouse_id"]. "<br>"; }
} else {
echo "0 结果";
}
$conn->close();
?>
3.2 库存调拨:
以下是一个简单的库存调拨的代码示例:
$stock_id = $_POST['stock_id'];
$from_warehouse_id = $_POST['from_warehouse_id'];
$to_warehouse_id = $_POST['to_warehouse_id'];
$quantity = $_POST['quantity'];
$sql = "UPDATE 库存表
SET stock = stock - '$quantity' WHERE stock_id = '$stock_id' AND warehouse_id = '$from_warehouse_id'";
$result = $conn->query($sql);
$sql = "INSERT INTO 库存表
(product_id, stock, warehouse_id) VALUES ('$product_id', '$quantity', '$to_warehouse_id')";
$result = $conn->query($sql);
if ($conn->affected_rows > 0) {
echo "库存调拨成功";
} else {
echo "库存调拨失败";
}
$conn->close();
?>
在上述代码中,我们使用了POST请求来获取库存调拨所需的参数,并通过SQL语句更新原仓库中的库存,并插入新仓库中的库存。
3.3 库存更新:
以下是一个简单的库存更新的代码示例:
$stock_id = $_POST['stock_id'];
$warehouse_id = $_POST['warehouse_id'];
$quantity = $_POST['quantity'];
$sql = "UPDATE 库存表
$result = $conn->query($sql);
echo "库存更新成功";} else {
echo "库存更新失败";}$sql = " SELECT * FROM
Warehouse table
";$result = $conn->query($sql);
rrreee
} else {rrreee
}
stock table
(product_id, stock, Warehouse_id ) VALUES ('$product_id', '$quantity', '$to_warehouse_id')";🎜$result = $conn->query($sql);🎜🎜if ($conn->affected_rows > 0) { 🎜rrreee🎜} else {🎜rrreee🎜}🎜🎜$conn->close();🎜?>🎜🎜Im obigen Code verwenden wir die POST-Anfrage, um die für die Bestandsübertragung erforderlichen Parameter abzurufen und die SQL-Anweisung zu übergeben Aktualisieren Sie den Bestand im ursprünglichen Lager und fügen Sie den Bestand im neuen Lager ein. 🎜🎜3.3 Bestandsaktualisierung: 🎜Das Folgende ist ein Codebeispiel für eine einfache Bestandsaktualisierung: 🎜🎜Inventartabelle SET stock = '$quantity' WHERE stock_id = '$stock_id' AND Warehouse_id = '$warehouse_id'"; 🎜 $result = $conn->query($sql);🎜🎜if ($conn->affected_rows > 0) {🎜rrreee🎜} else {🎜rrreee🎜}🎜🎜$conn->close() ; 🎜?>🎜🎜Im obigen Code haben wir eine POST-Anfrage verwendet, um die für die Bestandsaktualisierung erforderlichen Parameter abzurufen und den Bestand über SQL-Anweisungen zu aktualisieren. 🎜🎜Zusammenfassung: 🎜Anhand der obigen Codebeispiele können wir sehen, wie man mit PHP ein Warenbestandsverwaltungssystem entwickelt, das mehrere Lager unterstützt. Neben dem grundlegenden Datenbankdesign und der Anbindung haben wir auch die Anzeige von Produktlisten und Lagerlisten sowie Funktionen wie Bestandsabfrage, Bestandsübertragung und Bestandsaktualisierung implementiert. Natürlich können wir in der tatsächlichen Entwicklung je nach Bedarf komplexere Funktionserweiterungen und Optimierungen durchführen. Ich hoffe, dass dieser Artikel für Entwickler hilfreich sein wird, die ein Warenbestandsverwaltungssystem entwickeln möchten, das mehrere Lager unterstützt. 🎜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!