Rumah  >  Soal Jawab  >  teks badan

php - Isu pengesahan log masuk dengan TP5

Masalah yang harus dianggap agak remeh ialah apabila saya berurusan dengan bahagian hadapan dan belakang, saya perlu menentukan sama ada terdapat sesi untuk menentukan sama ada pengguna telah log masuk.

Tetapi kaedah yang saya lihat melalui dokumentasi ialah saya hanya boleh memperkenalkan satu penghakiman pada setiap halaman, dan kemudian melakukan operasi lain, bagaimanapun, mesti ada cara yang lebih mudah untuk menangani perkara ini saya sendiri.

Perkara utama ialah cara untuk menyediakannya sekali, dan kemudian biarkan semua halaman dalam direktori yang ditentukan menentukan sama ada untuk log masuk, untuk memudahkan operasi seterusnya

巴扎黑巴扎黑2704 hari yang lalu1110

membalas semua(5)saya akan balas

  • 迷茫

    迷茫2017-05-25 15:10:19

    Jenis akses rujukan pertama: tulis semua penghakiman dan pengesahan sesi dalam kelas. Cipta kaedah pra-pengawal atau kawalan permulaan dalam setiap pengawal, dan rujuk terus kaedah pengesahan log masuk kelas sesi dalam kaedah tersebut.
    Pewarisan jenis kedua: setiap pengawal mewarisi kelas pengesahan sesi, supaya setiap kali pengawal diakses, ia mewarisi semua kelas dan kaedah sesi, dan menetapkan kawalan permulaan dalam kelas sesi sebagai pengesahan log masuk sesi

    Syorkan pilihan kedua secara peribadi, kerana tidak perlu memulakan pengawal dalam setiap pengawal, yang mengurangkan kod dan memudahkan penyelenggaraan

    balas
    0
  • 世界只因有你

    世界只因有你2017-05-25 15:10:19

    Tulis kelas asas seperti Base.php dan laksanakan melalui _initializenya, seperti: Base.php,通过其_initialize来实现,如:

    <?php
    namespace app\admin\controller;
    
    use think\Controller;
    
    class Base extends Controller{
        public function _initialize(){
            $uid = session('uid');
            if($uid == null){
                $this->rediect('Login/index','请先登录后操作');
            }
        }
    }

    其中Login.php不能继承Base.php

    <?php
    namespace app\admin\controller;
    
    use think\Controller;
    
    class Login extends Controller{
        public function _initialize(){
            $uid = session('uid');
            if($uid != null){
                $this->rediect('Index/index','已登录');
            }
        }
    }

    Antaranya, Login.php tidak boleh mewarisi Base.php, jika tidak, pertimbangan khas tambahan diperlukan, seperti: 🎜 rrreee

    balas
    0
  • 迷茫

    迷茫2017-05-25 15:10:19

    Saya juga orang baru, tetapi saya hanya mempunyai idea Selepas log masuk untuk menyimpan sesi, saya boleh menulis kaedah awam untuk menentukan sesi di bahagian belakang, dan kemudian menggunakan kaedah ini dalam direktori yang diperlukan, supaya ada. tidak perlu menyimpannya dalam setiap direktori Sudah tiba masanya untuk menilai!

    只是个人想法,没有实践啊!
    

    balas
    0
  • 天蓬老师

    天蓬老师2017-05-25 15:10:19

    Tulis perisian tengah pengesahan (tingkah laku), dan kemudian panggilnya dalam laluan Anda boleh sewenang-wenangnya menentukan halaman mana yang perlu memanggil perisian tengah pengesahan ini.

    Anda boleh melihat bahagian tingkah laku dalam manual

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-25 15:10:19

    Tidak perlu memperkenalkan penghakiman pada setiap halaman Anda boleh mewarisi semua pengawal daripada pengawal biasa dan menulis penghakiman sesi dalam pengawal biasa

    balas
    0
  • Batalbalas