Sunteți pe pagina 1din 4

Proiect UBD

Lant Hotelier

1. Introducere
Această documentație descrie componentele cheie și funcționalitățile site-ului , care include
HTML, CSS, JavaScript, PHP și SQL pentru interacțiunea cu baza de date.

2. Sistemul de Login
2.1 Prezentare generală
Sistemul de login este o parte crucială a site-ului, responsabil pentru autentificarea utilizatorilor
și acordarea accesului la anumite secțiuni în funcție de acreditările lor.

2.2 Explicații pentru Cod


2.2.1 login.php
 Inițializare Sesizare: session_start() inițializează o sesiune pentru stocarea datelor
utilizatorului.
 Conexiune la Baza de Date: require "reservation/connect.php" include fișierul pentru
conectarea la baza de date MySQL.
 Funcție de Curățare: clean() este o funcție utilizată pentru curățarea datelor introduse
de utilizator pentru a preveni injecțiile SQL. Notă: mysql_real_escape_string este
învechit; ia în considerare utilizarea mysqli_real_escape_string sau a instrucțiunilor
pregătite.
 Curățarea Valorilor POST: $login și $password sunt curățate folosind funcția clean().
 Execuție Interogare: Credențialele de login sunt verificate în baza de date folosind o
interogare SQL.
 Creare Sesizare: În cazul în care login-ul este reușit, o sesiune nouă este creată, iar
informațiile utilizatorului sunt stocate în variabilele sesiunii ($_SESSION). Utilizatorul
este apoi redirecționat către panoul de control al administratorului.
 Tratarea Eșecului de Logare: În cazul eșecului logării, utilizatorul este redirecționat
înapoi la pagina de login.
 Tratarea Eșecului Interogării: În cazul în care interogarea SQL eșuează, este afișat un
mesaj de eroare.

2.2.2 auth.php
 Pornire Sesizare: Inițiază o sesiune.
 Verificare Variabilă de Sesiune: Verifică dacă SESS_MEMBER_ID este setat și nu este
gol.
 Redirecționare: Dacă utilizatorul nu este autentificat, este redirecționat către pagina de
login a administratorului (admin_index.php).

3. Autentificare
3.1 Prezentare generală
Autentificarea asigură că doar utilizatorii autorizați pot accesa anumite părți ale site-ului.

3.2 Explicații pentru Cod


3.2.1 auth.php
 Pornire Sesizare: Inițiază o sesiune.
 Verificare Variabilă de Sesiune: Verifică dacă SESS_MEMBER_ID este setat și nu este
gol.
 Redirecționare: Dacă utilizatorul nu este autentificat, este redirecționat către pagina de
login a administratorului (admin_index.php).

4. Conexiunea la Bază de Date


4.1 Prezentare generală
Fișierul de conexiune la baza de date (reservation/connect.php) gestionează conexiunea la
baza de date MySQL.
4.2 Explicații pentru Cod

4.2.1 connect.php
 Credențialele Bazei de Date: Conține variabile pentru numele de gazdă MySQL, numele
utilizatorului, parola, numele bazei de date și un prefix.
 Stabilirea Conexiunii: Utilizează mysql_connect pentru a se conecta la baza de date și
mysql_select_db pentru a selecta baza de date specifică.
 Tratarea Erorilor: Afișează un mesaj de eroare dacă conexiunea sau selecția bazei de
date eșuează.

5. Mesaje
5.1 Structura Codului
<?php
include('db.php');
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
mysql_query("INSERT INTO message (name, email, subject, message) VALUES
('$name','$email','$subject','$message')");
header("location: sending.php");
?>
5.2 include('db.php');
 Explicație: Se include fișierul db.php, care ar trebui să conțină conexiunea la baza de
date.
 Exemplu: Dacă db.php conține: $con = mysql_connect("localhost", "username",
"password");, această linie încarcă această conexiune.
5.3 Variabile
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];

 Explicație: Se preiau valorile dintr-un formular HTML prin metoda POST și se atribuie
acestor valori variabilelor corespunzătoare ($name, $email, $subject, $message).
 Exemplu: Dacă în formular există un câmp cu name="name", valoarea respectivă va fi
atribuită variabilei $name.

5.4 Inserarea în Baza de Date


mysql_query("INSERT INTO message (name, email, subject, message) VALUES
('$name','$email','$subject','$message')");

 Explicație: Se efectuează o interogare SQL pentru a insera datele preluate în tabela


message.
 Exemplu: Dacă $name = "John", $email = "john@example.com", $subject = "Feedback",
$message = "Hello", această interogare va adăuga o înregistrare nouă în baza de date.

5.5 Redirecționarea Utilizatorului


header("location: sending.php");

 Explicație: Se utilizează funcția header() pentru a redirecționa utilizatorul către pagina


sending.php după ce datele au fost introduse în baza de date.
 Exemplu: După ce datele sunt inserate cu succes, utilizatorul va fi redirecționat către
sending.php.

S-ar putea să vă placă și