PHP 및 Vue를 사용하여 창고 관리용 재고 관리 기능을 개발하는 방법
소개:
전자상거래 및 O2O 산업이 발전하면서 창고 관리는 운영 효율성과 사용자 경험을 위해 점점 더 중요해지고 있습니다. 기업. 창고 관리를 효율적으로 운영하기 위해 PHP와 Vue를 사용하여 재고 관리 시스템을 구축할 수 있습니다. 이 기사에서는 PHP와 Vue를 사용하여 창고 관리의 재고 관리 기능을 개발하는 방법을 자세히 소개하고 구체적인 코드 예제를 제공합니다.
1. 데이터베이스 테이블 생성
먼저 창고 관리와 관련된 데이터를 저장할 데이터베이스 테이블을 생성해야 합니다. 이 예에서는 products
와 inventory
라는 두 개의 테이블을 생성합니다. products
和inventory
。
products
表
CREATE TABLE products ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, price DECIMAL(10, 2) NOT NULL, PRIMARY KEY (id) );
inventory
products
table 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) ON DELETE CASCADE );
inventory
table <?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "inventory"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } ?>
<?php $sql = "SELECT * FROM products"; $result = $conn->query($sql); $products = array(); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { array_push($products, $row); } } echo json_encode($products); ?>
<?php $data = json_decode(file_get_contents("php://input"), true); $productId = $data['product']['id']; $quantity = $data['product']['quantity']; $sql = "UPDATE inventory SET quantity = '$quantity' WHERE product_id = '$productId'"; $result = $conn->query($sql); if ($result) { echo "success"; } else { echo "error"; } ?>
<template> <div> <h2>产品列表</h2> <ul> <li v-for="product in products" :key="product.id"> {{ product.name }} - ¥{{ product.price }} <input type="number" v-model="product.quantity" @change="updateInventory(product)"> </li> </ul> </div> </template> <script> export default { data() { return { products: [] }; }, mounted() { this.fetchProducts(); }, methods: { fetchProducts() { // 使用axios发送GET请求获取产品列表数据 axios.get('/api/getProducts') .then(response => { this.products = response.data; }) }, updateInventory(product) { // 使用axios发送POST请求更新库存数量 axios.post('/api/updateInventory', { product: product }) .then(response => { if (response.data === 'success') { alert('库存数量更新成功'); } else { alert('库存数量更新失败'); } }) } } }; </script>
import Vue from 'vue'; import Products from './components/Products.vue'; new Vue({ render: h => h(Products) }).$mount('#app');
프런트엔드 코드 구성
프런트엔드 코드를 적절한 디렉터리에 배치하고 Vue CLI 또는 기타 도구를 사용하여 빌드하고 패키징합니다.
위 내용은 PHP와 Vue를 사용하여 창고 관리를 위한 재고 관리 기능을 개발하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!