温馨提示:这篇文章已超过288天没有更新,请注意相关的内容是否还可用!
PHP进销存收银系统是一个用于管理商品进销存以及实现收银功能的网页应用。它可以帮助商家记录商品的进货、销售和库存情况,并提供收银功能,实现商品的销售和库存管理。
我们需要创建一个数据库来存储商品信息、进销存记录和收银信息。可以使用MySQL数据库来创建一个名为"inventory"的数据库,并在其中创建三个表:products、transactions和sales。
products表用于存储商品的信息,包括商品名称、价格和库存数量。可以使用以下的SQL语句创建该表:
CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(10, 2) NOT NULL,
quantity INT NOT NULL
);
transactions表用于记录商品的进货和销售情况,包括商品ID、进销类型、数量和日期。可以使用以下的SQL语句创建该表:
CREATE TABLE transactions (
id INT AUTO_INCREMENT PRIMARY KEY,
product_id INT NOT NULL,
type ENUM('purchase', 'sale') NOT NULL,
quantity INT NOT NULL,
date DATE NOT NULL,
FOREIGN KEY (product_id) REFERENCES products(id)
);
sales表用于记录每一次的销售信息,包括商品ID、销售数量和日期。可以使用以下的SQL语句创建该表:
CREATE TABLE sales (
id INT AUTO_INCREMENT PRIMARY KEY,
product_id INT NOT NULL,
quantity INT NOT NULL,
date DATE NOT NULL,
FOREIGN KEY (product_id) REFERENCES products(id)
);
接下来,我们可以使用PHP代码来实现商品的进货和销售功能。我们需要连接到数据库,并定义一些常量来存储数据库连接信息:
<?php
define('DB_HOST', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', 'password');
define('DB_NAME', 'inventory');
// 连接到数据库
$conn = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
if ($conn->connect_error) {
die("连接数据库失败: " . $conn->connect_error);
}
?>
然后,我们可以创建一个用于添加商品的函数,该函数接受商品名称、价格和库存数量作为参数,并将商品信息插入到products表中:
<?php
function addProduct($name, $price, $quantity) {
global $conn;
$stmt = $conn->prepare("INSERT INTO products (name, price, quantity) VALUES (?, ?, ?)");
$stmt->bind_param("sdi", $name, $price, $quantity);
if ($stmt->execute() === TRUE) {
echo "商品添加成功";
} else {
echo "商品添加失败: " . $conn->error;
}
$stmt->close();
}
?>
接下来,我们可以创建一个用于进行商品销售的函数,该函数接受商品ID和销售数量作为参数,并将销售信息插入到sales表中,并更新products表中的库存数量:
<?php
function sellProduct($product_id, $quantity) {
global $conn;
$stmt = $conn->prepare("INSERT INTO sales (product_id, quantity, date) VALUES (?, ?, CURDATE())");
$stmt->bind_param("ii", $product_id, $quantity);
if ($stmt->execute() === TRUE) {
echo "销售记录添加成功";
// 更新库存数量
$stmt = $conn->prepare("UPDATE products SET quantity = quantity - ? WHERE id = ?");
$stmt->bind_param("ii", $quantity, $product_id);
$stmt->execute();
} else {
echo "销售记录添加失败: " . $conn->error;
}
$stmt->close();
}
?>
我们可以创建一个用于显示商品列表和库存情况的函数,该函数从products表中获取商品信息并显示出来:
<?php
function showProducts() {
global $conn;
$result = $conn->query("SELECT * FROM products");
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "商品ID: " . $row["id"] . "<br>";
echo "商品名称: " . $row["name"] . "<br>";
echo "商品价格: " . $row["price"] . "<br>";
echo "库存数量: " . $row["quantity"] . "<br>";
echo "<br>";
}
} else {
echo "没有商品记录";
}
}
?>
通过以上的代码示例,我们可以实现一个简单的PHP进销存收银系统,商家可以通过该系统管理商品的进销存情况,并进行销售和收银操作。