Yöneticilerin giriş yapabileceği sayfa nasıl yapılır?

Açtığın tabloları iletirsen yazayım. Şunun gibi:
admin_tablosu id. user_name. user_mail. user_password. user_role.
----------------------
uye_tablosu id. user_name. user_mail. user_password. user_role.

Kusura bakmayın biraz geç oldu. Anca yazabiliyorum.
admins(tablo adı) user_id. user_name. user_mail. user_password. employees(tablo adı) user_id. user_name. user_mail. user_password. demo(tablo adı) pompalar_id. a b c d e f g h i j k l m

Demo da kodlarda i yi atlamışım m n demişim n silip i ekledim.
 
Aşağıda iki girişi birbirinden ayırdım. Yorum satırı olarak da açıkladım neler yapıldığını. Yapamazsan tekrar haber verirsin, bir de lütfen artık fotoğraf değil kod paylaş şu sitede 🙂 Kör oldum fotoğraflara bakmaktan 🥴

PHP:
if(isset($_POST['adminlogin'])) { //admin girişi yaptıracağın sayfadan aldığın post değeri "adminlogin" olmalı

    //post ile gelen verileri aldık
    $user_name = $_POST['user_name'];
    $user_mail = $_POST['user_mail'];
    $user_password = $_POST['user_password'];

    //sql sorgumuzda admins tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik
    $q  = $db->query("SELECT * FROM admins WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
    $admin = $q -> rowCount();
 
    //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık
    if( $admin > 0 ){
        $sorgu = $db->prepare("SELECT * FROM admins WHERE user_name = ?");
        $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
        $sorgu->execute();
        $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

        $_SESSION['adminoturumu']=true;
        $_SESSION['user_name']=$cikti['user_name'];
        $_SESSION['user_mail']=$cikti['user_mail'];
        $_SESSION['user_id']=$cikti['user_id'];
    
        //admin sayfasına yönlendirme yaptık
        header( "Refresh:2;url=admin_sayfasi.php" );
        echo 'Admin girişi yapıldı yönlendiriliyorsunuz...';
    } else {
        //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik
        header( "Refresh:2;url=giris_sayfasi.php" );
        echo 'Bilgileriniz hatalı...';
    }
}
if(isset($_POST['login'])) { //çalışan girişi yaptıracağın sayfadan aldığın post değeri "login" olmalı
  
    //post ile gelen verileri aldık
    $user_name = $_POST['user_name'];
    $user_mail = $_POST['user_mail'];
    $user_password = $_POST['user_password'];
  
    //sql sorgumuzda employees tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik
    $q  = $db->query("SELECT * FROM employees WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
    $employee = $q -> rowCount();
  
    //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık
    if( $employee > 0) {
        $sorgu = $db->prepare("SELECT * FROM employees WHERE user_name = ?");
        $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
        $sorgu->execute();
        $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

        $_SESSION['calisanoturumu']=true;
        $_SESSION['user_name']=$cikti['user_name'];
        $_SESSION['user_mail']=$cikti['user_mail'];
        $_SESSION['user_id']=$cikti['user_id'];
    
        //çalışan sayfasına yönlendirme yaptık
        header( "Refresh:2;url=calisan_sayfasi.php" );
        echo 'Çalışan girişi yapıldı yönlendiriliyorsunuz...';
    } else {
        //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik
        header( "Refresh:2;url=giris_sayfasi.php" );
        echo 'Bilgileriniz hatalı...';
    }

}
 
Son düzenleme:
Aşağıda iki girişi birbirinden ayırdım. Yorum satırı olarak da açıkladım neler yapıldığını. Yapamazsan tekrar haber verirsin, bir de lütfen artık fotoğraf değil kod paylaş şu sitede 🙂 kör oldum fotoğraflara bakmaktan 🥴

PHP:
if(isset($_POST['adminlogin'])) { //admin girişi yaptıracağın sayfadan aldığın post değeri "adminlogin" olmalı.

 //post ile gelen verileri aldık.
 $user_name = $_POST['user_name'];
 $user_mail = $_POST['user_mail'];
 $user_password = $_POST['user_password'];

 //sql sorgumuzda admins tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik.
 $q = $db->query("SELECT * FROM admins WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
 $admin = $q -> rowCount();

 //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık.
 if( $admin > 0 ){
 $sorgu = $db->prepare("SELECT * FROM admins WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['adminoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];
 $_SESSION['user_id']=$cikti['user_id'];

 //admin sayfasına yönlendirme yaptık.
 header( "Refresh:2;url=admin_sayfasi.php" );
 echo 'Admin girişi yapıldı yönlendiriliyorsunuz...';
 } else {
 //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik.
 header( "Refresh:2;url=giris_sayfasi.php" );
 echo 'Bilgileriniz hatalı...';
 }
}
if(isset($_POST['login'])) { //çalışan girişi yaptıracağın sayfadan aldığın post değeri "login" olmalı.

 //post ile gelen verileri aldık.
 $user_name = $_POST['user_name'];
 $user_mail = $_POST['user_mail'];
 $user_password = $_POST['user_password'];

 //sql sorgumuzda employees tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik.
 $q = $db->query("SELECT * FROM employees WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
 $employee = $q -> rowCount();

 //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık.
 if( $employee > 0) {
 $sorgu = $db->prepare("SELECT * FROM employees WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['calisanoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];
 $_SESSION['user_id']=$cikti['user_id'];

 //çalışan sayfasına yönlendirme yaptık.
 header( "Refresh:2;url=calisan_sayfasi.php" );
 echo 'Çalışan girişi yapıldı yönlendiriliyorsunuz...';
 } else {
 //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik.
 header( "Refresh:2;url=giris_sayfasi.php" );
 echo 'Bilgileriniz hatalı...';
 }

}

Tamamdır çok teşekkür ederim. Technopat'ta yeni sayılırım. Hesap eskide çok kullanmadım, yavaş yavaş öğreniyorum. Dediğinize de dikkat edeceğim.😅

Aşağıda iki girişi birbirinden ayırdım. Yorum satırı olarak da açıkladım neler yapıldığını. Yapamazsan tekrar haber verirsin, bir de lütfen artık fotoğraf değil kod paylaş şu sitede 🙂 kör oldum fotoğraflara bakmaktan 🥴

PHP:
if(isset($_POST['adminlogin'])) { //admin girişi yaptıracağın sayfadan aldığın post değeri "adminlogin" olmalı.

 //post ile gelen verileri aldık.
 $user_name = $_POST['user_name'];
 $user_mail = $_POST['user_mail'];
 $user_password = $_POST['user_password'];

 //sql sorgumuzda admins tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik.
 $q = $db->query("SELECT * FROM admins WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
 $admin = $q -> rowCount();

 //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık.
 if( $admin > 0 ){
 $sorgu = $db->prepare("SELECT * FROM admins WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['adminoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];
 $_SESSION['user_id']=$cikti['user_id'];

 //admin sayfasına yönlendirme yaptık.
 header( "Refresh:2;url=admin_sayfasi.php" );
 echo 'Admin girişi yapıldı yönlendiriliyorsunuz...';
 } else {
 //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik.
 header( "Refresh:2;url=giris_sayfasi.php" );
 echo 'Bilgileriniz hatalı...';
 }
}
if(isset($_POST['login'])) { //çalışan girişi yaptıracağın sayfadan aldığın post değeri "login" olmalı.

 //post ile gelen verileri aldık.
 $user_name = $_POST['user_name'];
 $user_mail = $_POST['user_mail'];
 $user_password = $_POST['user_password'];

 //sql sorgumuzda employees tablosunda gelen verilerle eşleşen kayıt olup olmadığını rowCount ile belirledik.
 $q = $db->query("SELECT * FROM employees WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password' ",PDO::FETCH_ASSOC);
 $employee = $q -> rowCount();

 //0'dan büyükse yani kayıt varsa tablonun içinden giriş yapan kaydın bilgilerini sessionlara atadık.
 if( $employee > 0) {
 $sorgu = $db->prepare("SELECT * FROM employees WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['calisanoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];
 $_SESSION['user_id']=$cikti['user_id'];

 //çalışan sayfasına yönlendirme yaptık.
 header( "Refresh:2;url=calisan_sayfasi.php" );
 echo 'Çalışan girişi yapıldı yönlendiriliyorsunuz...';
 } else {
 //0'dan büyük değilse yani girilen bilgilerle ilgili bir kayıt yoksa hata verip giriş sayfasına tekrar yönlendirdik.
 header( "Refresh:2;url=giris_sayfasi.php" );
 echo 'Bilgileriniz hatalı...';
 }

}

Buna beni hatırla nasıl ekleyeceğiz.

Tamamdır çok teşekkür ederim. Technopat'ta yeni sayılırım. Hesap eskide çok kullanmadım, yavaş yavaş öğreniyorum. Dediğinize de dikkat edeceğim.😅

Buna beni hatırla nasıl ekleyeceğiz.

Kod:
<?php
ob_start();
session_start();

include 'baglanti.php';

if(isset($_POST['login'])) {

 $user_name = $_POST['user_name'];
 $user_mail = $_POST['user_mail'];
 $user_password = $_POST['user_password'];
 $remember_me = isset($_POST['remember_me']);

 $q = $db->query("SELECT * FROM admins WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password'",PDO::FETCH_ASSOC);
 $admin = $q -> rowCount();

 $qq = $db->query("SELECT * FROM employees WHERE user_name='$user_name' && user_mail='$user_mail' && user_password='$user_password'",PDO::FETCH_ASSOC);
 $calisan = $qq -> rowCount();

 if( $admin > 0 ){
 $sorgu = $db->prepare("SELECT * FROM admins WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['adminoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];

 if ($remember_me) {
 setcookie('user_name', $user_name, time() + (30 * 24 * 60 * 60));
 setcookie('user_mail', $user_mail, time() + (30 * 24 * 60 * 60));
 setcookie('user_password', $user_password, time() + (30 * 24 * 60 * 60));
 }

 header( "Refresh:2;url=admin_page.php" );
 echo 'Admin girişi yapıldı yönlendiriliyorsunuz...';

 } elseif( $calisan > 0) {
 $sorgu = $db->prepare("SELECT * FROM employees WHERE user_name = ?");
 $sorgu->bindParam(1, $user_name, PDO::PARAM_STR);
 $sorgu->execute();
 $cikti = $sorgu->fetch(PDO::FETCH_ASSOC);

 $_SESSION['calisanoturumu']=true;
 $_SESSION['user_name']=$cikti['user_name'];
 $_SESSION['user_mail']=$cikti['user_mail'];

 if ($remember_me) {
 setcookie('user_name', $user_name, time() + (30 * 24 * 60 * 60));
 setcookie('user_mail', $user_mail, time() + (30 * 24 * 60 * 60));
 setcookie('user_password', $user_password, time() + (30 * 24 * 60 * 60));
 }

 header( "Refresh:2;url=employees_page.php" );
 echo 'Çalışan girişi yapıldı yönlendiriliyorsunuz...';
 } else {
 header( "Refresh:2;url=login_page.php" );
 echo 'Bilgileriniz hatalı...';
 }
}
?>

Böyle yaptım. Beni hatırlaya tıklayı giriş yapıp sayfayı yeniden aç kapa yapıyorum olmuyor.
 
Son düzenleme:

Yeni konular

Geri
Yukarı