PHP 8 Php 8 Üyelik Sistemi 2026 Güncel

Php 8 Oturum Açma

4 dk okuma süresi 526 görüntülenme 2024-09-25 4.9 (14 değerlendirme)

PHP 8 ile oturum açma (login) işlemi, kullanıcıların sisteme giriş yapmasını sağlamak için kullanılan temel bir özelliktir. Aşağıda, kullanıcı oturum açma sürecini adım adım açıklayan bir rehber bulabilirsiniz.

1. Veritabanı Bağlantısı

Öncelikle, oturum açma işlemi için veritabanına bağlantı kurmalısınız. Aşağıdaki örnekte, kullanıcı bilgilerini sakladığımız users tablosuna bağlanacağız.

<?php $host = 'localhost'; // Veritabanı sunucusu $db = 'veritabani_adi'; // Veritabanı adı $user = 'kullanici_adi'; // Veritabanı kullanıcı adı $pass = 'sifre'; // Veritabanı şifresi try { $pdo = new PDO("mysql:host=$host;dbname=$db", $user, $pass); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "Bağlantı hatası: " . $e->getMessage(); } ?>

2. Oturum Açma Formu

Kullanıcının e-posta adresi ve şifresini girmesi için bir HTML formu oluşturun.

<!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Oturum Aç</title> </head> <body> <h2>Oturum Açma Formu</h2> <form action="oturum_ac.php" method="post"> <label for="email">E-posta:</label> <input type="email" id="email" name="email" required> <br> <label for="password">Şifre:</label> <input type="password" id="password" name="password" required> <br> <input type="submit" value="Oturum Aç"> </form> </body> </html>

3. Oturum Açma İşlemini Gerçekleştirme

Kullanıcı formunu gönderdiğinde, bilgileri almak ve doğrulamak için oturum_ac.php dosyasını oluşturun.

<?php session_start(); // Oturum başlat // Veritabanı bağlantısı $host = 'localhost'; $db = 'veritabani_adi'; $user = 'kullanici_adi'; $pass = 'sifre'; try { $pdo = new PDO("mysql:host=$host;dbname=$db", $user, $pass); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Form verilerini alma if ($_SERVER["REQUEST_METHOD"] === "POST") { $email = trim($_POST['email']); $password = $_POST['password']; // Kullanıcıyı veritabanından alma $stmt = $pdo->prepare("SELECT * FROM users WHERE email = :email"); $stmt->bindParam(':email', $email); $stmt->execute(); $user = $stmt->fetch(); // Kullanıcı mevcutsa şifre kontrolü if ($user && password_verify($password, $user['password'])) { // Oturum bilgilerini saklama $_SESSION['user_id'] = $user['id']; $_SESSION['username'] = $user['username']; echo "Oturum açma başarılı! Hoş geldiniz, " . htmlspecialchars($user['username']) . "!"; // İsteğe bağlı: Kullanıcıyı başka bir sayfaya yönlendirin // header("Location: anasayfa.php"); // exit; } else { echo "Geçersiz e-posta veya şifre."; } } } catch (PDOException $e) { echo "Hata: " . $e->getMessage(); } ?>

4. Güvenlik Önlemleri

Oturum açma sürecinde güvenliği artırmak için aşağıdaki önlemleri alabilirsiniz:

  • Veri Doğrulama: Kullanıcıdan alınan bilgilerin doğru formatta olduğundan emin olun.
  • Şifre Hashleme: Kullanıcı şifrelerini güvenli bir şekilde hashleyerek depolamak için password_hash() fonksiyonunu kullanın.
  • SQL Injection Önleme: Kullanıcı girdilerini veritabanına eklerken prepared statements kullanarak SQL injection saldırılarına karşı koruma sağlayın.
  • XSS Koruması: Kullanıcı bilgilerini ekrana yazarken htmlspecialchars() fonksiyonunu kullanarak XSS saldırılarına karşı koruma sağlayın.

5. Oturum Yönetimi

Oturum açtıktan sonra kullanıcı bilgilerini saklamak için PHP oturumunu kullanabilirsiniz. Oturum bilgilerini silmek için oturum kapatma işlemi ekleyebilirsiniz.

Oturumu Kapatma

<?php session_start(); // Oturumu başlat // Oturumu sonlandırma session_unset(); // Tüm oturum değişkenlerini temizle session_destroy(); // Oturumu yok et echo "Oturum kapatıldı. Ana sayfaya dönmek için <a target="_blank" href='anasayfa.php'>tıklayın</a>."; ?>

Sonuç

Bu adımlarla, PHP 8 kullanarak basit bir oturum açma sistemi oluşturmuş oldunuz. Kullanıcılar e-posta adresi ve şifre ile giriş yaparak sisteminize erişebilirler. Bu sistemi geliştirerek kullanıcı kaydı, şifre sıfırlama ve e-posta doğrulama gibi ek özellikler eklemeyi düşünebilirsiniz. Bu, uygulamanızın kullanıcı yönetimi için daha kapsamlı bir yapı oluşturmanıza yardımcı olacaktır.

Bu Dersi Değerlendirin

Bu ders size yardımcı oldu mu? Puan verin!

Geri bildiriminiz içeriğimizi sürekli güncel ve kaliteli tutmamızı sağlar.

4.9 / 5 (Toplam 14 oy kullanıldı)

Sıkça Sorulan Sorular (SSS)

Bu ders ve konuyla ilgili en çok merak edilenler

Php 8 Oturum Açma dersini öğrenmek için ön koşul var mı?

Bu eğitim temel seviyeden ileri seviyeye adım adım hazırlanmıştır. Kodları kopyalayıp Canlı Editör üzerinde test ederek kolayca pratik yapabilirsiniz.

Örnek kodları kendi projelerimde ücretsiz kullanabilir miyim?

Evet, PHP Hocası üzerindeki tüm kod örnekleri açık kaynak mantığıyla sunulmaktadır. Ticari veya kişisel projelerinizde serbestçe kullanabilirsiniz.

Takıldığım bir yerde nereden soru sorabilirim?

Dersin altındaki topluluk yorumları bölümünden sorunuzu sorabilirsiniz. Eğitmenlerimiz ve topluluk üyelerimiz kısa sürede yanıt verecektir.

Paylaş:
PHP Hocası Akademi

Topluluk Yorumları (0)

Ders Hakkında Yorum Yap veya Soru Sor

Henüz yorum yapılmamış. İlk yorumu siz yazın!