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

السؤال

نشر (معدل)

السلام عليكم ورحمة الله

طلب مني laravel project  عبارة عن  crud  لتسحيل الشكاوى للموظفين فيديو باصوت والصورة  اولا تقوم بتسجيل بيانات الموظف العادية ويكون هناك input control تقوم بتفح الكاميرا وتسجيل الفيديو من خلال البرنامج حيث انني لااريد تسجي الفيديو اولا ومن ثم رفعه لا اريد ان يتم تسجيل الفيديو من البرنامج ومن ثم يتم تخزينه في الdb , وبعد ذلك يتم عرضه البيانات والفيديو المسجل فهل من مساعده او افكار تساعدني وشكرا

تم التعديل في بواسطة Mustafa Suleiman
تعديل عنوان السؤال

Recommended Posts

  • 0
نشر

 سأوضح لك خطة عامة لتنفيذ نظام CRUD لتسجيل الشكاوى للموظفين، بما في ذلك تسجيل الفيديو والصورة وعرضها:

1- إعداد قاعدة البيانات

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

2- إعداد نموذج الموظف

  • إنشاء نموذج لبيانات الموظفين باستخدام Laravel's Eloquent ORM.
  • ضمن النموذج، عليك بتعريف الحقول اللازمة مثل الاسم، والبريد الإلكتروني، والوظيفة، وخلافه.

3- إنشاء صفحة التسجيل

  • إنشاء واجهة المستخدم لتسجيل بيانات الموظفين.
  • استخدمي حقول الإدخال لجمع المعلومات الأساسية مثل الاسم والبريد الإلكتروني والوظيفة.
  • إضافة زر أو حقل تحكم لفتح كاميرا الويب وتسجيل الفيديو، وتستطيعي استخدام JavaScript وواجهة برمجة تطبيقات WebRTC لتحقيق ذلك.

4- معالجة البيانات

  • إنشاء وظيفة لمعالجة بيانات الاستمارة المرسلة من صفحة التسجيل.
  • داخل هذه الوظيفة، استخدمي طرق Laravel لإنشاء سجل جديد في قاعدة البيانات باستخدام بيانات الموظف المقدمة.
  • حددي مسارًا لتخزين الفيديو المسجل في الملفات، ويتوفر ميزة التخزين المؤقت في Laravel .

وسأشرح لك مثال:

  1. إنشاء وظيفة في طبقة التحكم (Controller) لمعالجة بيانات الاستمارة المرسلة من صفحة التسجيل، باسم store أو اسم آخر مناسب.
  2. داخل هذه الوظيفة، استخدمي طرق Laravel لإنشاء سجل جديد في قاعدة البيانات باستخدام بيانات الموظف المقدمة، وتستطيعي استخدام النموذج المرتبط بالموظفين (Employee Model) والوصول إلى الحقول المناسبة مثل الاسم والبريد الإلكتروني والوظيفة.
  3. تعيين المسار الذي سيتم تخزين الفيديو المسجل فيه باستخدام ميزة التخزين المؤقت في Laravel من خلال store() لحفظ الملف المؤقت في المجلد المناسب.
  4. تحديد حقل النص في قاعدة البيانات الذي يحتوي على مسار الفيديو المسجل، واستخدمي الدالة setAttribute() في نموذج الموظف (Employee Model) لتعيين قيمة المسار الذي تم تخزينه.
  5. بعد الانتهاء من تخزين المسار وإنشاء السجل في قاعدة البيانات، عليك بتنفيذ أي إجراءات إضافية تحتاجها مثل تنفيذ إشعار للمستخدم أو إعادة توجيهه إلى صفحة أخرى.

5- تخزين الفيديو والصورة

  • بمجرد تسجيل الفيديو من كاميرا الويب، قومي بتخزينه في مجلد مؤقت في الخادم باستخدام Laravel's Filesystem.
  • استخدمي حقل النص في جدول الموظفين لتخزين مسار الفيديو المؤقت.
  • تكوين Laravel لمعالجة تحميل الملفات ونقل الفيديو من المجلد المؤقت إلى مجلد دائم في الخادم.

6- عرض البيانات والفيديو

  • إنشاء صفحة لعرض بيانات الموظفين المسجلة، بما في ذلك الفيديو والصورة المسجلة.
  • استرجعي بيانات الموظفين من قاعدة البيانات باستخدام Eloquent ORM.
  • عرض البيانات في صفحة العرض وقم بتضمين مشغل الفيديو لعرض الفيديو المسجل.

7- التعامل مع CRUD العادي

  • تحديث واجهة المستخدم لتمكين إجراءات CRUD العادية على بيانات الموظفين، مثل إضافة وتعديل وحذف.
  • تنفيذ وظائف CRUD اللازمة في طبقات التحكم (Controllers) باستخدام Eloquent ORM ومكونات Laravel.

8- تحسينات إضافية

  • تستطيعي تنفيذ تحسينات إضافية، مثل إضافة ميزات التحقق من صحة الملفات المرفوعة وتحويل الصورة أو الفيديو إلى صيغة معينة قبل التخزين.

وإذا كان هناك أي نقطة غير واضحة أخبريني وسأوضحها لكِ.

  • 0
نشر

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

بمجرد تلقي الشكوى، يمكنك الاستفادة من API لهذه الخدمات لاسترداد الفيديو المسجل وعرضه في صفحة الشكوى. يمكنك استخدام Laravel لتنفيذ هذه المهمة باستخدام مكتبات مثل Guzzle لإجراء طلبات API. أو مكتبة JavaScript مثل Axios لإجراء الطلبات من الواجهة الأمامية إذا كان ذلك ملائمًا لتطبيقك.

وفي كلتا الحالتين، منطق العملية واحد.

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...