国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah rangka kerja php YII Buat kedai dalam talian menggunakan rangka kerja Yii

Buat kedai dalam talian menggunakan rangka kerja Yii

Jun 21, 2023 pm 05:53 PM
Pusat beli-belah dalam talian cipta rangka kerja yii

Sebagai pembangun web, pembelajaran dan latihan menggunakan rangka kerja PHP sudah pasti penting. Di antara banyak rangka kerja PHP, rangka kerja Yii ialah rangka kerja yang cekap, elegan dan selamat dengan pangkalan pengguna yang luas.

Dalam artikel ini, saya akan berkongsi cara menggunakan rangka kerja Yii untuk membuat aplikasi pusat membeli-belah dalam talian asas. Aplikasi ini akan mempunyai fungsi pusat membeli-belah asas seperti pengurusan pengguna, pengurusan produk dan fungsi troli beli-belah. Aplikasi ini boleh digunakan sebagai amalan pengenalan untuk pemula untuk mempelajari rangka kerja Yii.

Pasang rangka kerja Yii

Sebelum mula menggunakan rangka kerja Yii, kita perlu memasang rangka kerja terlebih dahulu. Rangka kerja Yii menyediakan pelbagai kaedah pemasangan, kaedah yang paling biasa digunakan ialah memasang menggunakan Komposer. Sebelum pemasangan, kami perlu mengesahkan bahawa Komposer dipasang.

Kita boleh menggunakan arahan berikut untuk memasang rangka kerja Yii:

composer create-project --prefer-dist yiisoft/yii2-app-basic basic

Arahan di atas akan mencipta aplikasi asas. Anda boleh mengesahkan sama ada rangka kerja Yii berjaya dipasang dengan melawati http://localhost/basic.

Reka bentuk jadual data dan pengisian data

Sebelum membuat aplikasi pusat membeli-belah dalam talian, kita perlu membuat jadual data yang berkaitan dengan pusat membeli-belah dan mengisi data. Artikel ini akan menggunakan MySQL sebagai pangkalan data dan mencipta jadual data berikut:

  • Jadual pengguna: menyimpan maklumat pengguna, seperti nama pengguna, kata laluan dan e-mel.
  • Jadual produk: menyimpan maklumat produk, seperti nama, harga dan keterangan.
  • Jadual pesanan: menyimpan maklumat pesanan, seperti ID pengguna, ID produk dan kuantiti pesanan.
  • Jadual troli: menyimpan maklumat troli beli-belah, seperti ID pengguna, ID produk dan kuantiti, dsb.

Menambahkan indeks yang sesuai pada jadual data di atas boleh meningkatkan kecekapan pertanyaan.

Berikut ialah penyataan SQL penciptaan jadual untuk jadual data di atas:

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `email` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

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

CREATE TABLE `order` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `product_id` int(11) NOT NULL,
  `quantity` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`),
  KEY `product_id` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `cart` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `product_id` int(11) NOT NULL,
  `quantity` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `user_id` (`user_id`),
  KEY `product_id` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Sekarang, kita perlu mengisi data untuk menguji aplikasi. Tambahkan sekurang-kurangnya satu rekod pengguna pada jadual pengguna dan sekurang-kurangnya satu rekod produk pada jadual produk. Kami akan menggunakan pengguna dan produk ini sebagai data ujian untuk baki artikel ini.

Mencipta Pengawal Pengguna

Kami akan mulakan dengan mencipta Pengawal Pengguna. Dalam rangka kerja Yii, pengawal ialah komponen teras yang mengendalikan permintaan aplikasi. Pengawal bertanggungjawab untuk mengesan jenis permintaan dan memanggil kaedah operasi tindak balas berdasarkan permintaan.

Sekarang, kami mencipta UserController dan menambah kaedah tindakan asas. Kami akan menggunakan sambungan yiiwebController untuk mencipta pengawal.

Dalam Yii, nama kelas pengawal biasanya ditambah dengan akhiran Pengawal, yang boleh menerangkan dengan lebih baik fungsi yang dilaksanakan oleh kelas. Berikut ialah kod asas kelas UserController:

<?php

namespace appcontrollers;

use yiiwebController;

class UserController extends Controller
{
    public function actionIndex()
    {
        return $this->render('index');
    }

    public function actionLogin()
    {
        // code for login logic
    }

    public function actionRegister()
    {
        // code for registration logic
    }
}

Dalam kod di atas, kami telah menambah tiga kaedah operasi asas. Kaedah actionIndex() akan menjadikan fail paparan index.php. Ini ialah nama kaedah tindakan lalai. Kaedah actionLogin() dan actionRegister() akan digunakan untuk log masuk dan pendaftaran pengguna.

Sekarang, kita perlu mencipta fail paparan index.php. Lihat fail adalah output kaedah tindakan dalam pengawal. Kami akan menggunakan kaedah Yii::$app->view->render() yang disediakan oleh rangka kerja Yii untuk memaparkan paparan.

Buat fail index.php dalam folder paparan/pengguna dan tambah kod berikut:

<?php

use yiihelpersHtml;

$this->title = 'User';
$this->params['breadcrumbs'][] = $this->title;
?>
<h1><?= Html::encode($this->title) ?></h1>
<p>
Welcome to the user homepage.
</p>

Kod di atas akan memaparkan mesej alu-aluan ringkas pada penyemak imbas.

Mencipta Pengawal dan Paparan Produk

Sekarang, kita akan beralih kepada mencipta Pengawal dan Paparan Produk. Kami akan menggunakan sambungan yiidataActiveDataProvider untuk mendapatkan data senarai produk.

Buat pengawal ProductController dan tambah kaedah tindakan berikut:

<?php

namespace appcontrollers;

use yiiwebController;
use appmodelsProduct;
use yiidataActiveDataProvider;

class ProductController extends Controller
{
    public function actionIndex()
    {
        $dataProvider = new ActiveDataProvider([
            'query' => Product::find(),
        ]);

        return $this->render('index', [
            'dataProvider' => $dataProvider,
        ]);
    }

    public function actionAddtocart($id)
    {
        // code for add to cart logic
    }
}

Seperti yang ditunjukkan dalam kod, kami mula-mula menggunakan Product::find() untuk mendapatkan semua produk. Kami kemudian meletakkan data senarai produk dalam ActiveDataProvider dan menghantarnya ke paparan. Selepas ini, kami mencipta kaedah actionAddtocart() untuk menambah item pada troli beli-belah.

Kita perlu mencipta folder produk dan mencipta fail paparan index.php di bawah folder ini. Kami menggunakan widget GridView yang akan memaparkan senarai produk berdasarkan data yang disediakan oleh DataProvider. Kami juga menambah butang untuk menambah produk pada troli.

Berikut ialah kod untuk fail views/product/index.php:

<?php

use yiihelpersHtml;
use yiigridGridView;

$this->title = 'Product';
$this->params['breadcrumbs'][] = $this->title;
?>
<h1><?= Html::encode($this->title) ?></h1>

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => [
        'id',
        'name',
        'price',
        'description',
        [
            'class' => 'yiigridActionColumn',
            'buttons' => [
                'addtocart' => function ($url, $model) {
                    return Html::a('Add to cart', ['product/addtocart', 'id' => $model->id]);
                }
            ],
            'template' => '{addtocart}',
        ],
    ],
]); ?>

Kini kami boleh mengesahkan paparan dengan melawati http://localhost/basic/product/index dalam penyemak imbas diberikan dengan betul.

Buat pengawal troli beli-belah dan lihat

Kami memerlukan pengawal troli beli-belah dan paparan untuk menguruskan item yang ditambahkan pada troli beli-belah di pusat membeli-belah. Kami akan menggunakan session untuk menyimpan data troli beli-belah.

Kami mencipta pengawal CartController dan menambah kaedah operasi berikut:

<?php

namespace appcontrollers;

use yiiwebController;
use Yii;

class CartController extends Controller
{
    public function actionIndex()
    {
        $cart = Yii::$app->session->get('cart');
        return $this->render('index', [
            'cart' => $cart,
        ]);
    }

    public function actionAdd($id)
    {
        // code for add product to cart logic
    }

    public function actionRemove($id)
    {
        // code for remove product from cart logic
    }
}

Dalam kod di atas, kami mula-mula mendapatkan data troli beli-belah yang disimpan dalam sesi. Dalam kaedah actionAdd($id), kami akan menambahkan produk dengan nombor ID yang ditentukan pada troli beli-belah. Dalam kaedah actionRemove($id), kami akan mengalih keluar item dengan nombor ID yang ditentukan daripada troli beli-belah.

Seterusnya, kita perlu mencipta folder troli dan mencipta fail paparan index.php di bawah folder ini. Kami menggunakan widget ListView yang akan memaparkan senarai troli beli-belah berdasarkan data troli beli-belah yang disimpan dalam sesi. Kami juga menambah beberapa butang untuk menambah atau mengurangkan bilangan item dalam troli beli-belah atau untuk mengalih keluar item daripada troli beli-belah.

Berikut ialah kod paparan/cart/index.php fail:

<?php

use yiihelpersHtml;
use yiiwidgetsListView;

$this->title = 'Shopping Cart';
$this->params['breadcrumbs'][] = $this->title;
?>
<h1><?= Html::encode($this->title) ?></h1>

<?= ListView::widget([
    'dataProvider' => $dataProvider,
    'itemView' => '_cart_item',
    'emptyText' => 'Your cart is empty.',
]) ?>

在views/cart文件夾下創(chuàng)建_cart_item.php視圖文件,該文件將被用于渲染購(gòu)物車列表中的每一行。以下是views/cart/_cart_item.php文件的代碼:

<?php

use yiihelpersHtml;
use yiiwidgetsActiveForm;

$form = ActiveForm::begin([
    'id' => 'cart-item-' . $model['id'],
]); ?>

<?= Html::a('Remove', ['cart/remove', 'id' => $model['id']]) ?>

<?= $model['name'] ?>

<?= $form->field($model, 'quantity')->textInput(['value' => $model['quantity']]) ?>

<?= Html::submitButton('Update') ?>

<?php ActiveForm::end(); ?>

以上代碼將會(huì)在瀏覽器中顯示購(gòu)物車列表,用戶可以在該列表中執(zhí)行增加或減少商品數(shù)量的操作,也可以刪除購(gòu)物車中已有商品。

完成在線商城應(yīng)用程序

現(xiàn)在,我們已經(jīng)完成了基礎(chǔ)的在線商城應(yīng)用程序,該應(yīng)用程序擁有用戶管理,產(chǎn)品管理和購(gòu)物車等基礎(chǔ)功能。該應(yīng)用程序可以作為初學(xué)者學(xué)習(xí)和實(shí)踐Yii框架的入門實(shí)踐。當(dāng)然,在實(shí)際應(yīng)用中,我們?nèi)孕枰砑痈喙δ軄頋M足商城的需求。

Atas ialah kandungan terperinci Buat kedai dalam talian menggunakan rangka kerja Yii. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Cara mencipta keluarga dengan Gree+ Cara mencipta keluarga dengan Gree+ Mar 01, 2024 pm 12:40 PM

Ramai rakan menyatakan bahawa mereka ingin tahu cara membuat keluarga dalam perisian Gree+ Berikut adalah kaedah operasi untuk anda Rakan yang ingin mengetahui lebih lanjut, datang dan lihat dengan saya. Mula-mula, buka perisian Gree+ pada telefon mudah alih anda dan log masuk. Kemudian, dalam bar pilihan di bahagian bawah halaman, klik pilihan "Saya" di hujung kanan untuk memasuki halaman akaun peribadi. 2. Selepas datang ke halaman saya, terdapat pilihan "Buat Keluarga" di bawah "Keluarga". 3. Seterusnya lompat ke halaman untuk mencipta keluarga, masukkan nama keluarga yang akan ditetapkan dalam kotak input mengikut gesaan, dan klik butang "Simpan" di penjuru kanan sebelah atas selepas memasukkannya. 4. Akhir sekali, gesaan "simpan berjaya" akan muncul di bahagian bawah halaman, menunjukkan bahawa keluarga telah berjaya dibuat.

Bagaimana untuk membuat folder pada Telefon Realme? Bagaimana untuk membuat folder pada Telefon Realme? Mar 23, 2024 pm 02:30 PM

Tajuk: Panduan Pemula Telefon Realme: Bagaimana Membuat Folder pada Telefon Realme? Dalam masyarakat hari ini, telefon bimbit telah menjadi alat yang sangat diperlukan dalam kehidupan manusia. Sebagai jenama telefon pintar popular, Telefon Realme digemari pengguna kerana sistem pengendaliannya yang ringkas dan praktikal. Dalam proses menggunakan telefon Realme, ramai orang mungkin menghadapi situasi di mana mereka perlu mengatur fail dan aplikasi pada telefon mereka, dan mencipta folder ialah cara yang berkesan. Artikel ini akan memperkenalkan cara membuat folder pada telefon Realme untuk membantu pengguna mengurus kandungan telefon mereka dengan lebih baik. Tidak.

Bagaimana untuk mencipta seni piksel dalam GIMP Bagaimana untuk mencipta seni piksel dalam GIMP Feb 19, 2024 pm 03:24 PM

Artikel ini akan menarik minat anda jika anda berminat menggunakan GIMP untuk penciptaan seni piksel pada Windows. GIMP ialah perisian penyuntingan grafik terkenal yang bukan sahaja percuma dan sumber terbuka, tetapi juga membantu pengguna mencipta imej dan reka bentuk yang cantik dengan mudah. Selain sesuai untuk pemula dan pereka profesional, GIMP juga boleh digunakan untuk mencipta seni piksel, satu bentuk seni digital yang menggunakan piksel sebagai satu-satunya blok bangunan untuk melukis dan mencipta. Cara Membuat Seni Piksel dalam GIMP Berikut ialah langkah utama untuk mencipta gambar piksel menggunakan GIMP pada PC Windows: Muat turun dan pasang GIMP, kemudian lancarkan aplikasi. Buat imej baharu. Ubah saiz lebar dan tinggi. Pilih alat pensel. Tetapkan jenis berus kepada piksel. sediakan

Cara membuat carta Gantt menggunakan Highcharts Cara membuat carta Gantt menggunakan Highcharts Dec 17, 2023 pm 07:23 PM

Cara menggunakan Highcharts untuk mencipta carta Gantt memerlukan contoh kod khusus Pengenalan: Carta Gantt ialah bentuk carta yang biasa digunakan untuk memaparkan kemajuan projek dan pengurusan masa secara visual boleh memaparkan masa mula, masa tamat dan kemajuan tugas. Highcharts ialah perpustakaan carta JavaScript yang berkuasa yang menyediakan jenis carta kaya dan pilihan konfigurasi yang fleksibel. Artikel ini akan memperkenalkan cara menggunakan Highcharts untuk mencipta carta Gantt dan memberikan contoh kod khusus. 1. Carta tinggi

Pandangan pertama di Django: Cipta projek Django pertama anda menggunakan baris arahan Pandangan pertama di Django: Cipta projek Django pertama anda menggunakan baris arahan Feb 19, 2024 am 09:56 AM

Mulakan perjalanan projek Django: mulakan dari baris arahan dan cipta projek Django pertama anda Django ialah rangka kerja aplikasi web yang berkuasa dan fleksibel Ia berdasarkan Python dan menyediakan banyak alat dan fungsi yang diperlukan untuk membangunkan aplikasi web. Artikel ini akan membawa anda untuk mencipta projek Django pertama anda bermula dari baris arahan. Sebelum memulakan, pastikan anda memasang Python dan Django. Langkah 1: Cipta direktori projek Mula-mula, buka tetingkap baris arahan dan buat direktori baharu

Cara Membuat Poster Kenalan untuk iPhone Anda Cara Membuat Poster Kenalan untuk iPhone Anda Mar 02, 2024 am 11:30 AM

Dalam iOS17, Apple telah menambahkan ciri poster kenalan pada apl Telefon dan Kenalan yang biasa digunakan. Ciri ini membolehkan pengguna menetapkan poster yang diperibadikan untuk setiap kenalan, menjadikan buku alamat lebih visual dan peribadi. Poster kenalan boleh membantu pengguna mengenal pasti dan mencari kenalan tertentu dengan lebih cepat, meningkatkan pengalaman pengguna. Melalui ciri ini, pengguna boleh menambah gambar atau logo tertentu pada setiap kenalan mengikut keutamaan dan keperluan mereka, menjadikan antara muka buku alamat lebih jelas Apple dalam iOS17 menyediakan pengguna iPhone dengan cara baru untuk mengekspresikan diri mereka, dan menambah poster kenalan yang boleh diperibadikan. Ciri Poster Kenalan membolehkan anda memaparkan kandungan unik dan diperibadikan apabila memanggil pengguna iPhone lain. awak

Bagaimana untuk membuat fail mdf Bagaimana untuk membuat fail mdf Feb 18, 2024 pm 01:36 PM

Fail MDF ialah format fail pangkalan data biasa dan ia merupakan salah satu fail utama pangkalan data Microsoft SQL Server. Dalam sistem pengurusan pangkalan data, fail MDF digunakan untuk menyimpan data utama pangkalan data, termasuk jadual, indeks, prosedur tersimpan, dsb. Mencipta fail MDF ialah salah satu langkah utama dalam mencipta pangkalan data Beberapa kaedah biasa akan diperkenalkan di bawah. Menggunakan SQLServerManagementStudio(SSMS)SQLServerManag

Cara membuat dokumen dengan Pengimbas Cara membuat dokumen dengan Pengimbas Mar 06, 2024 pm 09:43 PM

Bagaimana untuk membuat dokumen dengan Pengimbas? Anda boleh membuat dokumen baharu dalam APP Pengimbas Kebanyakan pengguna tidak tahu cara membuat dokumen Seterusnya ialah tutorial grafik tentang cara membuat dokumen dengan Pengimbas. Tutorial penggunaan Raja Pengimbas Cara membuat dokumen dengan Raja Pengimbas 1. Mula-mula buka APP Raja Pengimbas, dan kemudian klik butang [tiga titik] di sudut kanan atas halaman utama 2. Kemudian bar fungsi akan berkembang di bawah, klik perkhidmatan [Folder Baru] ;3. Kemudian tetingkap kecil akan muncul, masukkan nama dalam kotak folder baharu dan klik [OK] 4. Akhir sekali, selepas mencipta folder, masukkan folder dan kembali ke halaman My Documents untuk melihat fail yang baru dibuat.

See all articles