اذهب إلى المحتوى
  • 3

كود PHP للتحقق من اسم المستخدم وكلمة المرور في قاعدة بيانات PHPMyAdmin وعرض رسالة خطأ في حالة الفشل

Sara Mohammed9

السؤال

ممكن طريقة كود التحقق من اسم المستخدم وكلمة المرور في phpmyadmin اذا كان موجود يتم توجية لصفحتة واذا ماكان موجود يطلع خطا وهذا الخطا ابغاة يكون في فورم كلمة السر واسم المستخدم بلون الاحمر 

تم التعديل في بواسطة Mustafa Suleiman
تعديل عنوان السؤال
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

اولاً عليك إنشاء صفحة HTML تحتوي على نموذج (form) لإدخال اسم المستخدم وكلمة المرور:

<!DOCTYPE html>
<html>
<head>
    <title>تسجيل الدخول</title>
    <style>
        .error {
            color: red;
        }
    </style>
</head>
<body>
    <h2>تسجيل الدخول</h2>
    <form method="POST" action="login.php">
        <label for="username">اسم المستخدم:</label><br>
        <input type="text" id="username" name="username"><br>
        <label for="password">كلمة المرور:</label><br>
        <input type="password" id="password" name="password"><br>
        <input type="submit" value="تسجيل الدخول">
    </form>
</body>
</html>

بعد ذلك في ملف PHP يسمى "login.php"، يتم التحقق من اسم المستخدم وكلمة المرور في قاعدة البيانات وتوجيه المستخدم إلى صفحته الشخصية في حالة النجاح، وإظهار رسالة خطأ في حالة الفشل:

<?php
// تفاصيل الاتصال بقاعدة البيانات
$servername = "اسم الخادم";
$username = "اسم المستخدم";
$password = "كلمة المرور";
$dbname = "اسم قاعدة البيانات";

// اسماء حقول جدول المستخدمين في قاعدة البيانات
$userField = "اسم حقل اسم المستخدم";
$passField = "اسم حقل كلمة المرور";

// استلام قيم اسم المستخدم وكلمة المرور من النموذج
$enteredUsername = $_POST['username'];
$enteredPassword = $_POST['password'];

// إنشاء اتصال بقاعدة البيانات
$conn = new mysqli($servername, $username, $password, $dbname);

// التحقق من وجود خطأ في الاتصال
if ($conn->connect_error) {
    die("فشل الاتصال بقاعدة البيانات: " . $conn->connect_error);
}

// استعلام للتحقق من اسم المستخدم وكلمة المرور
$query = "SELECT * FROM users WHERE $userField = '$enteredUsername' AND $passField = '$enteredPassword'";
$result = $conn->query($query);

// التحقق من نتيجة الاستعلام
if ($result->num_rows > 0) {
    // اسم المستخدم وكلمة المرور صحيحة، يتم توجيه المستخدم إلى صفحته الشخصية
    header("Location: صفحة_المستخدم.php");
} else {
    // اسم المستخدم أو كلمة المرور غير صحيحة، يتم عرض رسالة خطأ في النموذج
    echo '<h3 class="error">خطأ: اسم المستخدم أو كلمة المرور غير صحيحة.</h3>';
    echo '<script>document.getElementById("username").style.borderColor = "red";</script>';
    echo '<script>document.getElementById("password").style.borderColor = "red";</script>';
}

// إغلاق اتصال قاعدة البيانات
$conn->close();
?>

وانتبهي إلى أنه يجب استبدال "اسم الخادم" و "اسم المستخدم" و "كلمة المرور" و "اسم قاعدة البيانات" بمعلومات الاتصال الفعلية لقاعدة البيانات الخاصة بك.

كما يجب استبدال "اسم حقل اسم المستخدم" و "اسم حقل كلمة المرور" بأسماء الحقول الصحيحة في جدول المستخدمين خاصتك.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

هذا هو مثال للتحقق من اسم المستخدم وكلمة المرور في PHP وعرض الأخطاء بلون أحمر:

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    $conn = new mysqli('host', 'user', 'password', 'database');
    
    $sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
    $result = $conn->query($sql);
    
    if ($result->num_rows == 1) {
        // Login success
        header('Location: /home.php');
    } else {
        // Login failed
        echo '<p style="color:red">Invalid username or password!</p>';
    }
}

هذا الكود يقوم بما يلي:

  • يتحقق من طريقة الإرسال POST
  • يأخذ قيم اسم المستخدم وكلمة المرور المرسلة من النموذج
  • يقوم بإجراء استعلام SQL للتحقق من وجود سجل مطابق في قاعدة البيانات
  • إذا وجد سجل واحد مطابق، يتم توجيه المستخدم إلى صفحة المنزل
  • إذا لم يعثر على سجلات مطابقة، يعرض رسالة خطأ باللون الأحمر

هذا سيضمن عرض رسالة الخطأ بلون أحمر إذا كان اسم المستخدم أو كلمة المرور غير صحيحة.

يمكنك تطبيق هذا الكود على صفحتك تسجيل الدخول للتحقق من بيانات المستخدم وإظهار الأخطاء بهذه الطريقة.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...