Video: PHP for Web Development 2024
Untuk menggunakan sesi, anda perlu memanggil fungsi session_start () pada setiap halaman yang akan menggunakan sesi. Ini boleh menjadi rumit, terutamanya jika anda cuba untuk menangani sesi ke beberapa program PHP. Anda boleh menggunakan auto_prepend_file untuk memanggil session_start dan, dengan berbuat demikian, anda tidak perlu menukar fail lain!
Dalam latihan berikut, anda membuat dua fail: satu yang akan menjadi fail utama dan yang lain mengandungi fungsi yang disediakan untuk memulakan sesi. Sebelum melakukan latihan ini, anda perlu memastikan bahawa. fail htaccess berfungsi atau anda boleh mengubah konfigurasi pelayan web Apache anda.
Pastikan untuk memulakan semula Apache jika anda membuat perubahan kepada konfigurasi.
Dalam. fail htaccess untuk root dokumen anda, letakkan kod berikut:
php_value auto_prepend_file "prepend php"
Sebagai alternatif, anda boleh menambah baris itu dalam stanza dalam konfigurasi Apache untuk pelayan web anda untuk root dokumen anda. Sebagai contoh, jika root dokumen anda adalah "/ var / www" anda boleh menambah baris itu selepas arahan
Buka editor teks anda dan buat fail kosong yang baru. Dalam fail, letakkan kod berikut:
Simpan fail sebagai sesi. php dalam akar dokumen anda.
Buka penyemak imbas web dan arahkan ke // localhost / sesi. php . Anda harus melihat halaman seperti ini.
Kurangkan pelayar web dan buat fail baru dalam editor teks anda. Di dalam fail itu letakkan kod berikut:
Simpan fail sebagai prepend. php dalam akar dokumen anda.
Dalam pelayar web anda, tambah semula sesi tersebut. fail php atau pergi ke // localhost / sesi. php untuk melihat sesi. fail php yang anda buat sebelum ini. Anda kini perlu melihat halaman seperti ini.
Jika anda menerima halaman kosong atau ralat yang dipaparkan melalui penyemak imbas, maka fail yang dipersembahkan tidak dijumpai. Periksa perkara mudah, seperti ejaan fail (prepp. Php). Semak juga untuk memastikan bahawa fail yang anda panggil dengan arahan auto_prepend_file adalah di mana ia sepatutnya, dalam akar dokumen jika itu adalah bagaimana pelayan web anda dikonfigurasi.
Jika anda menerima halaman yang masih mengatakan "Sesi belum dimulakan," maka ada kemungkinan bahawa Apache tidak melihat arahan auto_prepend_file anda sama sekali. Jika anda telah meletakkannya dalam satu. fail htaccess dalam akar dokumen anda, anda perlu memastikan bahawa Apache sedang membaca. fail htaccess. Teruskan membaca atau semak dengan penyedia hosting anda untuk melihat apakah.fail htaccess dibenarkan.
Sesetengah konfigurasi pelayan web tidak membenarkan. fail htaccess. Anda boleh menyusun semula Apache untuk membenarkan mereka dengan mengubah arahan AllowOverride ke Semua untuk direktori yang anda ingin baca. fail htaccess (dalam kes ini, root dokumen anda). Arahan ini sepatutnya seperti ini:
AllowOverride All
Fail yang disediakan boleh menjadi pembantu yang luar biasa, tetapi mereka juga kadang-kadang boleh menyebabkan kekeliruan. Contohnya, jika anda tidak pasti mengapa program sedang melakukan sesuatu, fail auto-prepended kadang-kadang boleh menambah kekeliruan kerana ia memuatkan banyak fail dan fungsi lain - menambah ruang yang mencukupi untuk kesilapan.
Selain itu, setiap permintaan kini mesti menggunakan fail auto-prepended ini, yang boleh menyebabkan masalah prestasi jika rantaian terlalu banyak diperlukan dan termasuk fail dari fail pra-prepended itu. Dengan itu, faedah biasanya melampaui kelemahan untuk fail yang disediakan.