


Cara menggunakan PHP dan Vue untuk membangunkan fungsi carian pantas untuk pengurusan gudang
Cara menggunakan PHP dan Vue untuk membangunkan fungsi carian pantas untuk pengurusan gudang
Dalam sistem pengurusan gudang moden, fungsi carian pantas adalah penting. Ia boleh membantu pengguna mencari maklumat gudang yang diperlukan dengan cepat dan meningkatkan kecekapan kerja. Artikel ini akan memperkenalkan cara menggunakan PHP dan Vue untuk membangunkan fungsi carian pantas dalam sistem pengurusan gudang, dan menyediakan contoh kod khusus.
- Persediaan persekitaran pembangunan
Sebelum anda mula, pastikan anda telah memasang perisian berikut:
- Persekitaran pelayan PHP (seperti Apache atau Nginx)
- Pangkalan data MySQL .js
- Vue Penciptaan Pangkalan Data dan Jadual Data
Pertama, kita perlu mencipta jadual data untuk menyimpan maklumat gudang. Laksanakan pernyataan SQL berikut dalam pangkalan data MySQL:
CREATE DATABASE IF NOT EXISTS `repository_management`; USE `repository_management`; CREATE TABLE `repositories` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, `description` TEXT, `location` VARCHAR(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `repositories` (`name`, `description`, `location`) VALUES ('仓库A', '这是仓库A的描述', '地点A'), ('仓库B', '这是仓库B的描述', '地点B'), ('仓库C', '这是仓库C的描述', '地点C');
Kod di atas mencipta pangkalan data bernama repository_management
, dan mencipta jadual data bernama repositori
di dalamnya, dan memasukkan beberapa sampel data. repository_management
的数据库,并在其中创建了一个名为repositories
的数据表,并插入了一些示例数据。
- 后端开发
接下来,我们将使用PHP来开发后端API,用于提供仓库数据和搜索功能。创建一个名为api.php
的文件,将其放在服务器的Web根目录下。
<?php header('Content-Type: application/json'); // 连接数据库 $servername = 'localhost'; $username = '数据库用户名'; $password = '数据库密码'; $dbname = 'repository_management'; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die('连接失败: ' . $conn->connect_error); } // 获取仓库列表 if ($_SERVER['REQUEST_METHOD'] === 'GET') { $sql = 'SELECT * FROM `repositories`'; $result = $conn->query($sql); if ($result->num_rows > 0) { $repositories = array(); while ($row = $result->fetch_assoc()) { $repositories[] = $row; } echo json_encode($repositories); } else { echo '[]'; } } // 搜索仓库 if ($_SERVER['REQUEST_METHOD'] === 'POST') { $searchTerm = $_POST['term']; $sql = "SELECT * FROM `repositories` WHERE `name` LIKE '%$searchTerm%'"; $result = $conn->query($sql); if ($result->num_rows > 0) { $repositories = array(); while ($row = $result->fetch_assoc()) { $repositories[] = $row; } echo json_encode($repositories); } else { echo '[]'; } } $conn->close();
在上述代码中,我们首先建立与数据库的连接,然后定义两个接口:获取仓库列表和搜索仓库。获取仓库列表接口通过执行SQL语句SELECT * FROM
repositories从数据库中获取所有仓库数据,并将结果返回为JSON格式的数据。搜索仓库接口则是通过获取从前端传递过来的搜索关键字,执行SQL语句`SELECT * FROM `repositories` WHERE `name` LIKE '%$searchTerm%'
来进行模糊搜索,并将结果返回为JSON格式的数据。
请记得将代码中的数据库用户名
和数据库密码
替换为你自己的实际数据库用户名和密码。
- 前端开发
接下来,我们将使用Vue.js来开发前端页面,用于展示仓库信息和搜索功能。创建一个名为index.html
的文件,并将其放在服务器的Web根目录下。
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <title>仓库管理系统</title> <script src="https://cdn.jsdelivr.net/npm/vue"></script> </head> <body> <div id="app"> <h1 id="仓库管理系统">仓库管理系统</h1> <input type="text" v-model="searchTerm" placeholder="输入关键字搜索仓库"> <ul> <li v-for="repository in repositories">{{ repository.name }}({{ repository.location }})</li> </ul> </div> <script> new Vue({ el: '#app', data: { repositories: [], searchTerm: '' }, mounted: function () { this.getRepositories(); }, methods: { getRepositories: function () { fetch('api.php') .then(function(response) { return response.json(); }) .then(function(repositories) { this.repositories = repositories; }.bind(this)) .catch(function(error) { console.log(error); }); }, searchRepositories: function () { fetch('api.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: 'term=' + this.searchTerm }) .then(function(response) { return response.json(); }) .then(function(repositories) { this.repositories = repositories; }.bind(this)) .catch(function(error) { console.log(error); }); } }, watch: { searchTerm: function () { this.searchRepositories(); } } }); </script> </body> </html>
在上述代码中,我们创建了一个Vue实例,并在data
属性中定义了两个变量:repositories
(用于存储仓库数据)和searchTerm
(用于存储搜索关键字)。在mounted
生命周期钩子中,我们调用getRepositories
方法来从后端获取仓库数据,并将其赋值给repositories
变量。getRepositories
方法使用了fetch
函数来发送GET请求。
在模板中,我们使用了v-for
指令来遍历repositories
变量,并将每个仓库的名称和位置显示在页面上。输入框中使用了v-model
指令将输入的内容和searchTerm
变量进行了双向绑定。在输入框内容发生变化时,watch
属性中的searchTerm
监听到变化后,自动调用searchRepositories
方法来发送POST请求搜索仓库数据。
- 运行和测试
将上述代码保存后,启动你的Web服务器,并在浏览器中打开index.html
- Pembangunan belakang🎜Seterusnya, kami akan menggunakan PHP untuk membangunkan API bahagian belakang untuk menyediakan data gudang dan fungsi carian. Cipta fail bernama
api.php
dan letakkannya dalam direktori akar web pelayan. 🎜rrreee🎜Dalam kod di atas, kami mula-mula mewujudkan sambungan dengan pangkalan data, dan kemudian menentukan dua antara muka: mendapatkan senarai gudang dan mencari gudang. Antara muka Dapatkan Senarai Gudang memperoleh semua data gudang daripada pangkalan data dengan melaksanakan pernyataan SQL SELECT * FROM
repositori dan mengembalikan hasilnya sebagai data dalam format JSON. Antara muka gudang carian melakukan carian kabur dengan mendapatkan kata kunci carian yang diluluskan dari bahagian hadapan, melaksanakan pernyataan SQL `PILIH * DARI `repositori` DI MANA `nama` SEPERTI '%$searchTerm%'
, dan mengembalikan hasilnya. Data dalam format JSON. 🎜🎜Sila ingat untuk menggantikan Nama Pengguna Pangkalan Data
dan Kata Laluan Pangkalan Data
dalam kod dengan nama pengguna dan kata laluan pangkalan data anda sendiri. 🎜- 🎜Pembangunan bahagian hadapan🎜🎜🎜Seterusnya, kami akan menggunakan Vue.js untuk membangunkan halaman hujung hadapan untuk memaparkan maklumat gudang dan fungsi carian. Cipta fail bernama
index.html
dan letakkan dalam direktori akar web pelayan. 🎜rrreee🎜Dalam kod di atas, kami mencipta contoh Vue dan mentakrifkan dua pembolehubah dalam atribut data
: repositori
(digunakan untuk menyimpan data gudang) dan searchTerm (digunakan untuk menyimpan kata kunci carian). Dalam cangkuk kitaran hayat <code>dipasang
, kami memanggil kaedah getRepositories
untuk mendapatkan data gudang daripada bahagian belakang dan menetapkannya kepada pembolehubah repositori
. Kaedah getRepositories
menggunakan fungsi fetch
untuk menghantar permintaan GET. 🎜🎜Dalam templat, kami menggunakan arahan v-for
untuk beralih melalui pembolehubah repositori
dan memaparkan nama dan lokasi setiap repositori pada halaman. Arahan v-model
digunakan dalam kotak input untuk mengikat kandungan input secara dwiarah kepada pembolehubah searchTerm
. Apabila kandungan kotak input berubah, searchTerm
dalam atribut watch
mengesan perubahan dan secara automatik memanggil kaedah searchRepositories
untuk menghantar permintaan POST untuk mencari data gudang. 🎜- 🎜Jalankan dan uji🎜🎜🎜Selepas menyimpan kod di atas, mulakan pelayan web anda dan buka alamat fail
index.html
dalam penyemak imbas. Anda akan melihat halaman dengan kotak input dan senarai repositori. Selepas memasukkan kata kunci dalam kotak input, halaman akan memaparkan maklumat gudang yang berkaitan dengan kata kunci dalam masa nyata. 🎜🎜Di atas adalah keseluruhan proses menggunakan PHP dan Vue untuk membangunkan fungsi carian pantas pengurusan gudang. Dengan merealisasikan kerjasama antara API bahagian belakang dan halaman hujung hadapan, kami boleh mencari gudang dengan cepat dan menjelaskan maklumat lokasi dan penerangan mereka. Fungsi sedemikian adalah sangat praktikal dan mudah untuk dilaksanakan, dan boleh meningkatkan kecekapan pengurusan gudang. 🎜Atas ialah kandungan terperinci Cara menggunakan PHP dan Vue untuk membangunkan fungsi carian pantas untuk pengurusan gudang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

Dalam PHP, kata kunci akhir digunakan untuk mencegah kelas daripada diwarisi dan kaedah ditimpa. 1) Apabila menandakan kelas sebagai muktamad, kelas tidak boleh diwarisi. 2) Apabila menandakan kaedah sebagai muktamad, kaedah itu tidak boleh ditulis semula oleh subkelas. Menggunakan kata kunci akhir memastikan kestabilan dan keselamatan kod anda.

Pagination adalah teknologi yang memisahkan set data besar ke dalam halaman kecil untuk meningkatkan prestasi dan pengalaman pengguna. Di VUE, anda boleh menggunakan kaedah terbina dalam berikut untuk paging: Kirakan jumlah halaman: TotalPages () Traversal Page Number: V-For Directive Untuk menetapkan halaman semasa: CurrentPage Dapatkan data halaman semasa: CurrentPagedata ()

Masa depan PHP akan dicapai dengan menyesuaikan diri dengan trend teknologi baru dan memperkenalkan ciri -ciri inovatif: 1) menyesuaikan diri dengan pengkomputeran awan, kontena dan seni bina microservice, menyokong Docker dan Kubernetes; 2) memperkenalkan pengkompil JIT dan jenis penghitungan untuk meningkatkan prestasi dan kecekapan pemprosesan data; 3) Berterusan mengoptimumkan prestasi dan mempromosikan amalan terbaik.

Pembangunan pelbagai halaman Vue adalah cara untuk membina aplikasi menggunakan rangka kerja VUE.JS, di mana permohonan dibahagikan kepada halaman berasingan: Penyelenggaraan kod: Memisahkan aplikasi ke dalam beberapa halaman boleh menjadikan kod lebih mudah untuk dikendalikan dan diselenggarakan. Modularity: Setiap halaman boleh digunakan sebagai modul yang berasingan untuk penggunaan semula dan penggantian mudah. Routing mudah: Navigasi antara halaman boleh diuruskan melalui konfigurasi penghalaan mudah. Pengoptimuman SEO: Setiap halaman mempunyai URL sendiri, yang membantu SEO.

Pemintasan fungsi dalam VUE adalah teknik yang digunakan untuk mengehadkan bilangan kali fungsi dipanggil dalam tempoh masa yang ditentukan dan mencegah masalah prestasi. Kaedah pelaksanaan adalah: mengimport perpustakaan lodash: import {debounce} dari 'lodash'; Gunakan fungsi debounce untuk membuat fungsi memintas: const debouncedfunction = debounce (() = & gt; { / logical /}, 500); Panggil fungsi Intercept, dan fungsi kawalan dipanggil paling banyak sekali dalam 500 milisaat.

PHP dan Python masing -masing mempunyai kelebihan sendiri, dan pilihannya harus berdasarkan keperluan projek. 1.Php sesuai untuk pembangunan web, dengan sintaks mudah dan kecekapan pelaksanaan yang tinggi. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan yang kaya.

Loop foreach di vue.js menggunakan arahan V-untuk, yang membolehkan pemaju meleleh melalui setiap elemen dalam array atau objek dan melakukan operasi tertentu pada setiap elemen. Sintaks adalah seperti berikut: & lt; template & gt; & lt; ul & gt; & lt; li v-for = & quot; item dalam item & gt; & gt; {{item}} & lt;/li & gt; & lt;/ul & gt; & lt;/template & gt; & am
