cari
Rumahpangkalan datatutorial mysqlBagaimana untuk Melindungi Halaman Ahli Sahaja dengan Sistem Log Masuk?

How to Secure Member-Only Pages with a Login System?

Halaman Ahli Sahaja Selamat dengan Sistem Log Masuk

Apabila mencipta sistem log masuk selamat untuk halaman ahli sahaja, terdapat beberapa aspek untuk pertimbangkan. Berikut ialah pendekatan alternatif untuk menangani kebimbangan anda:

Permulaan dan Fungsi Berasingan

  • Alihkan sambungan pangkalan data dan logik log masuk ke fail berasingan (mis., init. php).
  • Memerlukan fail ini pada permulaan setiap halaman PHP yang memerlukan akses kepada fungsi tersebut.

Pemprosesan Log Masuk Berpusat

  • Gunakan skrip log masuk berasaskan AJAX (ajax/login.php) untuk mengendalikan permintaan log masuk.
  • Lepaskan nama pengguna dan kata laluan sebagai data POST dan sahkannya terhadap pangkalan data.
  • Jika berjaya, tetapkan pembolehubah sesi yang sesuai dan kembalikan "1" ke halaman panggilan.

Pengurusan Sesi

  • Gunakan sesi PHP untuk menyimpan maklumat log masuk, seperti nama pengguna.
  • Gunakan pembolehubah sesi sebagai pengawal pada halaman terhad untuk menghalang akses tanpa kebenaran.

Kandungan Halaman dan Kemasukan Templat

  • Gunakan PHP termasuk untuk membawa masuk elemen halaman biasa, seperti pengepala dan pengaki, untuk pengalaman pengguna yang konsisten.
  • Gunakan penyataan gema PHP untuk memaparkan maklumat khusus pengguna secara dinamik, seperti nama pengguna log masuk, pada halaman terhad.

Contoh pelaksanaan:

init.php (pengasasan pangkalan data dan fungsi)

<?php // Database connection
$servername = "localhost";
$username = "username";
$password = "password";
$db = "database";

// Create connection
$conn = new mysqli($servername, $username, $password, $db);

// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

// Load custom functions
require_once('fn/functions.php');

index.php (halaman log masuk)

<?php require_once('inc/head.inc.php');
require_once('fn/init.php');
?>

<div>
<p><strong>ajax/login.php (pemprosesan log masuk)</strong></p>
<pre class="brush:php;toolbar:false"><?php $username = $_POST['username'];
$password = $_POST['password'];

// Validate credentials against database
if (authenticate($username, $password) == true) {
  // Set session variables
  session_start();
  $_SESSION['username'] = $username;
  
  echo 1; // Success
} else {
  echo 'Invalid credentials.';
}

restricted_page.php (halaman dilindungi)

<?php require_once('inc/head.inc.php');
require_once('fn/init.php');

// Check if user is logged in
session_start();
if (!isset($_SESSION['username'])) {
  header('Location: index.php');
  exit;
}
%>

<h1 id="Welcome-to-the-Restricted-Page-php-echo-SESSION-username">Welcome to the Restricted Page, <?php echo $_SESSION['username']; ?>!</h1>

Dengan mengikut garis panduan ini, anda boleh mencipta sistem log masuk selamat yang melindungi halaman ahli sahaja daripada akses tanpa kebenaran.

Atas ialah kandungan terperinci Bagaimana untuk Melindungi Halaman Ahli Sahaja dengan Sistem Log Masuk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
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
Jenis String Mysql: Penyimpanan, Prestasi, dan Amalan TerbaikJenis String Mysql: Penyimpanan, Prestasi, dan Amalan TerbaikMay 10, 2025 am 12:02 AM

Mysqlstringtypesimpactstorageandperformanceasfollows: 1) che-chexed-length, selingasingthesamestoragespace, whycanbefasterbutlessspace-efficient.2) varcharisvariable-length, morespace-efficientbutpotoTanSlower.3)

Memahami Jenis String MySQL: Varchar, Teks, Char, dan banyak lagiMemahami Jenis String MySQL: Varchar, Teks, Char, dan banyak lagiMay 10, 2025 am 12:02 AM

Mysqlstringtypesincludevarchar, teks, char, enum, andset.1) varcharisversatorvariable-lengtstringsuptoaspecifiedlimit.2)

Apakah jenis data rentetan dalam mysql?Apakah jenis data rentetan dalam mysql?May 10, 2025 am 12:01 AM

Mysqloffersvariousstringdatatypes: 1) charforfixed-lengtstrings, 2) varcharforvariable-lengthtext, 3) binaryandvarbinaryforbinarydata, 4) blobandtextforlargedata, dan5)

Cara Memberi Kebenaran kepada Pengguna MySQL BaruCara Memberi Kebenaran kepada Pengguna MySQL BaruMay 09, 2025 am 12:16 AM

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

Cara Menambah Pengguna di MySQL: Panduan Langkah demi LangkahCara Menambah Pengguna di MySQL: Panduan Langkah demi LangkahMay 09, 2025 am 12:14 AM

Toaddusersinmysqleffectivelyandsecurely, ikutiTheSesteps: 1) usethecreateUserStatementToadDanewuser, spesifyingthehostandastrongpassword.2) GrantnessaryPrivileGeSingSupingTheGrantement, ADHERINGTOTHEPRINCIPREFLEFLEASE.3)

MySQL: Menambah pengguna baru dengan kebenaran yang kompleksMySQL: Menambah pengguna baru dengan kebenaran yang kompleksMay 09, 2025 am 12:09 AM

TOADDANEWUSERWITHCEPLEXPELPISIONSIONSIONMYSQL, FOLLONGHESESTEPS: 1) COTETETHEUSERWITHCEATEUSER'NEWUSER '@' LOCSOUSTHOST'IDENTIFIFYBY'PA ssword ';. 2) grantrearaccesstoalltablesin'mydatabase'withgrantselectonmydatabase.to'newuser'@'localhost' ;. 3) GrantWriteAccessto '

MySQL: Jenis dan Collations String DataMySQL: Jenis dan Collations String DataMay 09, 2025 am 12:08 AM

Jenis data rentetan di MySQL termasuk char, varchar, binari, varbinary, gumpalan, dan teks. Kolaborasi menentukan perbandingan dan menyusun rentetan. 1.BARI sesuai untuk rentetan panjang tetap, Varchar sesuai untuk rentetan panjang berubah-ubah. 2.Binary dan Varbinary digunakan untuk data binari, dan gumpalan dan teks digunakan untuk data objek besar. 3. Peraturan menyusun seperti UTF8MB4_UNICODE_CI mengabaikan kes atas dan bawah dan sesuai untuk nama pengguna; UTF8MB4_BIN adalah sensitif kes dan sesuai untuk bidang yang memerlukan perbandingan yang tepat.

MySQL: Berapa panjang yang harus saya gunakan untuk varchars?MySQL: Berapa panjang yang harus saya gunakan untuk varchars?May 09, 2025 am 12:06 AM

Pemilihan panjang lajur MySqlvarchar terbaik harus berdasarkan analisis data, pertimbangkan pertumbuhan masa depan, menilai kesan prestasi, dan keperluan set aksara. 1) menganalisis data untuk menentukan panjang biasa; 2) Rizab ruang pengembangan masa depan; 3) memberi perhatian kepada kesan panjang besar pada prestasi; 4) Pertimbangkan kesan set aksara pada penyimpanan. Melalui langkah -langkah ini, kecekapan dan skalabiliti pangkalan data dapat dioptimumkan.

See all articles

Alat AI Hot

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual