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

السؤال

نشر

مرحبا ..

تحياتي اساتذتي الكرام,

انا مطور واجهات امامية وقد استعان بي صديقي في مشروع للتخرج خاص به وهو يريد ان يضيف المستخدمين الى قاعدة البيانات مع بعض المعلومات الخاصة بهم وقال لي ان كل شيء جاهز, ويبدو الأمر كما قال ولكنه توقف عند هذا الحد ولم يستطيع التعامل مع عمليات ال CRUDS فهو يريد ان يجلب بيانات المستخدم عند تسجيل الدخول ان كان قد قام بتسجيلها سابقا ..

 

ويبدو انه قد حصل على المساعدة في انشاء المشروع وايصاله الى هذه المرحلة من الاساتذة والطلاب المشتركين في المشروع ,

 

لدي بعض الخبرة في javascript وقمت بمحاكاة مشروع يشبهه من قبل , لكن من دون الاستعانة بقاعدة بيانات ابدا بل كنت استخدم ال array في ملف منفصل بدلا من ذلك,

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

 

لكن اريد المساعدة بنصيحة او فكرة او كود يرشدني, أي يكن لانني لم اجد ضالتي بعد الاستعانة بالذكاء الاصطناعي ,

 

ارجو ان كان الامر ممكنا مراجعة المشروع وتوجيهي , مع العلم ان الملف الخاص بقاعدة البيانات قمت بارفاقه ضمن الملفات الاساسية.

 

رابط المشروع على github

Recommended Posts

  • 1
نشر
بتاريخ 10 ساعة قال Amen Ramadan:

لدي بعض الخبرة في javascript وقمت بمحاكاة مشروع يشبهه من قبل , لكن من دون الاستعانة بقاعدة بيانات ابدا بل كنت استخدم ال array في ملف منفصل بدلا من ذلك,

بما أنك تعاملت مع هذا الموضوع من قبل، فالأمر يشبهه من حيث ترتيب الخطوات، فأنت تعاملت مع المصفوفة array والتي كان بمثابة قواعد البيانات التي تخزن فيها البيانات وتسترجعها، نفس الخطوات ستقوم بها ولكن مع بعض التفاصيل.

ومن الأشياء الهامة التي يجب وضعها في الاعتبار، أنه من أنجح الطرق للربط بين الواجهة الأمامية Frontend والواجهة الخلفية Backend هو باستخدام الواجهات البرمجية APIs التي يتم إنشاؤها بالواجهة الخلفية، واستدعاؤها بالواجهة الأمامية.

أولاً: إنشاء واجهة برمجية للاتصال بقاعدة البيانات:

للتعامل مع أي قواعد بيانات لابد من إنشاء اتصال بها، يمكنك استخدام معلومات الاتصال (مثل اسم المستخدم وكلمة المرور واسم قاعدة البيانات) للاتصال بقاعدة البيانات.

قم بفحص الاستجابة العائدة من الواجهة البرمجية للتأكد من نجاح الاتصال.

العمليات الأساسية (CRUD):

يتم إنشاء واجهة برمجية لكل عملية مثل:

  • واجهة برمجية لإنشاء مستخدم جديد، وهذه يتم استدعاؤها من صفحة Register وتقوم بإضافة مستخدم جديد للجدول باستخدام الأمر insert
  • واجهة برمجية لدخول المستخدم: نعطيها اسم المستخدم وكلمة المرور، وهي تستعلم عن هذه البيانات باستخدام الأمر select

وهكذا يتم إنشاء الواجهات البرمجية APIs المطلوبة، واستدعاؤها من الواجهة الأمامية.

هذه بعض الإرشادات لخطوات التعامل مع قواعد البيانات، وبالتأكيد الأمر يحتاج إلى دراسة قواعد البيانات والأوامر الأساسية بها مثل insert, update, delete, select وكذلك معرفة بإنشاء الجداول عن طريق الأمر create table وأيضًا معرفة كيفية الاتصال بين الواجهة الخلفية مع قواعد البيانات.

لمعرفة المزيد عن قواعد البيانات انقر هنا

 

 

 

  • 1
نشر
بتاريخ 6 ساعة قال Amen Ramadan:

حسنا اخي الكريم هل امكنك رؤية ملفات المشروع , انا اقوم باعداد الاتصال بين قاعدة البيانات على جهازي والمشروع , لكنني اريد ان اعرف هل هنالك خطأ ما في هيكلة المشروع او عند ارسال البيانات الى قاعدة البيانات, 

اطلعت على الشيفرات الخاص بك، وتبدو صحيحة، وأنت بالفعل قمت بعمل الاتصال مع قواعد البيانات، وإرسال البيانات إليها، المفترض أن يتم الاتصال ثم تسجيل البيانات.

فإذا لم يحدث كما هو متوقع يرجى بحث النقاط التالية

- أولاً: التأكد من الاتصال الصحيح بقواعد البيانات أنت تستخدم localhost, 8889 لذلك يرجى التأكد أن فعلًا قواعد البيانات متصلة بهذا الخادم على نفس المنفذ، وسنقوم بعمل تعديل صغير بالشيفرات، لأن السطر الخاص بالاتصال إذا حدث به مشكلة فلن يتم تنفيذ باقي الأسطر

<?php
$servername = "localhost:8889";
$username = "root";
$password = "root";
$dbname = "student_information2";

try {
  // نضع الشيفرات داخل كتلة 
  // try-catch
    $conn = new mysqli($servername, $username, $password, $dbname);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        // باقي الأسطر تكتب بشكل طبيعي
        // ...

        if (mysqli_query($conn, $sql)) {
            echo "Data inserted successfully!";
        } else {
            echo "Error inserting data: " . mysqli_error($conn);
        }
    }

    $conn->close();
} catch (Exception $e) {
    echo "An error occurred: " . $e->getMessage();
}
?>

- ثانيًا: التأكد من استخدام أسماء الحقول الصحيحة عند القراءة باستخدام $_post

 

  • 0
نشر

 

بتاريخ 8 دقائق مضت قال El Sayed El Tohamy:

ومن الأشياء الهامة التي يجب وضعها في الاعتبار، أنه من أنجح الطرق للربط بين الواجهة الأمامية Frontend والواجهة الخلفية Backend هو باستخدام الواجهات البرمجية APIs التي يتم إنشاؤها بالواجهة الخلفية، واستدعاؤها بالواجهة الأمامية.

 

 

تحياتي ,

شكرا لاهتمامك ,

حسنا اخي الكريم هل امكنك رؤية ملفات المشروع , انا اقوم باعداد الاتصال بين قاعدة البيانات على جهازي والمشروع , لكنني اريد ان اعرف هل هنالك خطأ ما في هيكلة المشروع او عند ارسال البيانات الى قاعدة البيانات, 

مثلا يوجد لدي صفحة ال register والكود الخاص بها (أعني كود ال php) يوجد في ملف اخر اسمه welcome2.php

وعند ارسال البيانات لا تضاف البيانات الى قاعدة البيانات .

هل هذا الترتيب خاطئ ام انه يعمل اذا كان الاتصال بقاعدة البيانات صحيح.

 

سؤالي هنا اخي الكريم بحكم خبرتك , هل المشروع كامل منطقيا ويجب علينا فقط التاكيد على الربط الصحيح بين المشروع وقاعدة البيانات , ام هنالك امر ما خاطئ او ناقص يحب علينا مراعاته ,

انا اعمل الى الان على الربط بين القاعدة والمشروع .

وشكرا مرة اخرى على وقتك. 

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...