Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penjelasan terperinci tentang menggunakan PHP untuk menulis sistem penggera inventori

Penjelasan terperinci tentang menggunakan PHP untuk menulis sistem penggera inventori

PHPz
PHPzasal
2023-03-31 09:07:59735semak imbas

Dengan perkembangan pesat e-dagang, pengurusan inventori telah menjadi perkara penting yang tidak boleh diabaikan oleh setiap perusahaan. Untuk mengelakkan inventori yang berlebihan dan meningkatkan pusing ganti inventori, adalah perlu untuk memantau status inventori dalam masa nyata. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menulis sistem penggera inventori.

  1. Buat pangkalan data

Buat pangkalan data bernama "inventori" dalam MySQL, dan kemudian buat dua jadual: satu untuk menyimpan maklumat produk dan satu lagi untuk Simpan maklumat inventori.

Buat jadual "produk":

CREATE TABLE `products` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `price` decimal(10,2) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Buat jadual "inventori":

CREATE TABLE `inventory` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `product_id` int(11) NOT NULL,
  `quantity` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  FOREIGN KEY (`product_id`) REFERENCES `products`(`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  1. Buat pangkalan data sambungan PHP

Dalam fail PHP, sambung ke pangkalan data MySQL:

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

// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检测连接
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
?>
  1. Laksanakan penggera inventori

Apabila kuantiti inventori kurang daripada 5, hantar e-mel kepada memberitahu pentadbir. Di sini kami menggunakan fungsi mel() terbina dalam PHP untuk menghantar e-mel.

// 查询低库存产品
$sql = "SELECT products.name, inventory.quantity
        FROM products
        INNER JOIN inventory ON products.id = inventory.product_id
        WHERE inventory.quantity < 5";

$result = mysqli_query($conn, $sql);

if(mysqli_num_rows($result) > 0) {
    // 构建电子邮件
    $to = "admin@example.com";
    $subject = "低库存警报";
    $message = "";
    while($row = mysqli_fetch_assoc($result)) {
        $message .= "产品: " . $row["name"] . ", 库存数量: " . $row["quantity"] . "\n";
    }

    // 发送电子邮件
    mail($to, $subject, $message);
}
  1. Pelaksanaan skrip berjadual

Untuk memantau inventori secara berterusan dan menghantar e-mel makluman tepat pada masanya, anda boleh menggunakan tugas berjadual Windows atau cron Linux yang dijadualkan fungsi tugasan. Jalankan kod di atas dengan kerap.

  1. Sepadukan kod ke dalam sistem pengurusan inventori anda yang sedia ada

Sepadukan kod di atas ke dalam sistem pengurusan inventori anda yang sedia ada. Apabila memasukkan inventori, pastikan medan "kuantiti" dalam jadual pangkalan data inventori dikemas kini dengan betul. Dengan cara ini, kami boleh menghantar e-mel penggera inventori dengan kerap menjalankan interaksi dengan pangkalan data inventori.

Kesimpulan:

Untuk melaksanakan fungsi penggera inventori PHP, anda perlu mewujudkan sistem pengurusan inventori dan menyimpan data inventori dalam pangkalan data MySQL. Dengan menulis kod PHP untuk berinteraksi dengan pangkalan data inventori, cari produk stok rendah, dan kemudian gunakan fungsi mel() terbina dalam PHP untuk menghantar e-mel makluman untuk memberitahu pentadbir. Pada masa yang sama, untuk menjejaki situasi inventori dalam masa, kita perlu menggunakan tugas berjadual (Windows) atau tugas berjadual cron (Linux) untuk melaksanakan kod dengan kerap.

Atas ialah kandungan terperinci Penjelasan terperinci tentang menggunakan PHP untuk menulis sistem penggera inventori. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn