search في قاعدة البيانات
السلام عليكم
أعمل على مشروع ويب سايت PHP Mysql
(يتيح للأعضاء المسجلين إضافة posts كل عضو في صفحته الخاصة تحت تصنيف يحدد العضو ومعلومات يضيفها)
اضفت الاكواد و الداتابيس ... الان أحتاج إضافة مربع بحث للموقع بحيث الزائر بامكانه إيجاد الposts المطلوبة بناء على مدخل البحث
(كان يكتب إسم العضو ناشر البوست / القسم الذي ينتمي له العضو / سنة النشر / كي وورد ... إلخ ) وتظهر له الpost المصنفة تحت المطلوب بحثه )
#في المرفقات صور للداتابيس وملف search بديت فيه حسب بعض الأكواد للسيرش
أحتاج مساعدة في الموضوع لو تكرمتوا ..
ساعد بالإجابة
"إن في قضاء حوائج الناس لذة لا يَعرفها إلا من جربها، فافعل الخير مهما استصغرته فإنك لا تدري أي حسنة تدخلك الجنة."
الإجابات (6)
9 ساعات مضت, Ali Majrashi said:
بالنسبة للاقسام الثانية يجب تعديلها بمايناسب مشروعك واحتياجاته مثلا لو نرغب بالبحث عن posts خاصه بعضو محدد هنا نحتاج فقط user_id الخاص بالعضو لجلب جميع posts الخاصة فيه
ممكن تحقيقها عن طريق عمل استعلام في جدول اليوزر باستخدام اسم اليوزر وربطه بجدول posts باستخدما JOINT او LEFT JOINT في query لتظهر نتائج اليوزر المراد الاستعلام عنه
معليش مافهمت هذي الجزئية كيف أعمل إستعلام في جدول بقاعدة البيانات ؟
في ٧/٧/١٤٣٧ هـ at 12:41, Ali Majrashi said:بالنسبة للخطأ يقولك الجدول post غير موجود بقاعدة البيانات عدلي query لمايناسب جدولك بقاعدة البيانات
بالنسبة للاقسام الثانية يجب تعديلها بمايناسب مشروعك واحتياجاته مثلا لو نرغب بالبحث عن posts خاصه بعضو محدد هنا نحتاج فقط user_id الخاص بالعضو لجلب جميع posts الخاصة فيه
ممكن تحقيقها عن طريق عمل استعلام في جدول اليوزر باستخدام اسم اليوزر وربطه بجدول posts باستخدما JOINT او LEFT JOINT في query لتظهر نتائج اليوزر المراد الاستعلام عنه
هذا الخطأ غير واضح ما هي المشكلة هنا لو تكرمت
2 ساعات مضت, Dem said:
هذا الخطأ بسبب استخدام دالة mysql_query() لتنفيذ الاستعلام هذه الدالة قديمه ومحذوفة بنسخ php الجديدة يفضل استخدام pdo او mysqli للاتصال بقاعدة البيانات وتنفيذ الاستعلامات
11 ساعات مضت, Ali Majrashi said:هذا الخطأ بسبب استخدام دالة mysql_query() لتنفيذ الاستعلام هذه الدالة قديمه ومحذوفة بنسخ php الجديدة يفضل استخدام pdo او mysqli للاتصال بقاعدة البيانات وتنفيذ الاستعلامات
أنا مستخدمه pdo للاتصال بالDB
لكن هذا الكود اتبعت مثال بالانترنت ماهو بديل هذ الاسعلام في الpdo لاضعه كبديل لها ؟
في April 14, 2016 at 22:13, Dem said:
معليش مافهمت هذي الجزئية كيف أعمل إستعلام في جدول بقاعدة البيانات ؟
عند عمل فلتر معين مثلا بالمثال الي اعطيتك هنا لما نبحث عن year قمنا ببناء query لجلب كل posts في سنة محددة ولكن عند محاولة البحث عن posts خاصه بيوزر لازم نعمل استعلام بجدول users ثم نربط جميع posts الخاصة في هذا اليوزر فاكيد راح تختلف query قليلا راح نستخدم joint او left joint لربط جدول ثاني بالنتيجة مثال بسيط لل query الخاصة بجلب بيانات عضو وجميع posts الخاصة فيه داخل ملف search.php
case 'user':
$query = "SELECT * FROM users LEFT JOIN posts ON users.id=posts.user_id WHERE users.name = '$searchInput'";
break;
هذا query راح يجلب بيانات اليوزر ونفس الوقت جميع posts الخاصة فيه لعرضها
2 ساعات مضت, Dem said:أنا مستخدمه pdo للاتصال بالDB
لكن هذا الكود اتبعت مثال بالانترنت ماهو بديل هذ الاسعلام في الpdo لاضعه كبديل لها ؟
بالنسبة للاكواد انا عدلت على search.php في ردودي فوق خذي الي يناسبك وعدلي الباقي والامثلة في الانترنت نفس الطريقة دائما خذي الي يناسب مشروعك واتركي الباقي
في ٩/٧/١٤٣٧ هـ at 11:28, Ali Majrashi said:عند عمل فلتر معين مثلا بالمثال الي اعطيتك هنا لما نبحث عن year قمنا ببناء query لجلب كل posts في سنة محددة ولكن عند محاولة البحث عن posts خاصه بيوزر لازم نعمل استعلام بجدول users ثم نربط جميع posts الخاصة في هذا اليوزر فاكيد راح تختلف query قليلا راح نستخدم joint او left joint لربط جدول ثاني بالنتيجة مثال بسيط لل query الخاصة بجلب بيانات عضو وجميع posts الخاصة فيه داخل ملف search.php
هذا query راح يجلب بيانات اليوزر ونفس الوقت جميع posts الخاصة فيه لعرضها
بالنسبة للاكواد انا عدلت على search.php في ردودي فوق خذي الي يناسبك وعدلي الباقي والامثلة في الانترنت نفس الطريقة دائما خذي الي يناسب مشروعك واتركي الباقي
الله يعافيك عدلت على الكود الأن البحث عن العنوان و الديبارتمنت يطلع النتيجة صحيحة
لكن في البحث عن السنة يطلع هذا الerror
أما في البحث عن الactivity و key word ما يطلع لي أي نتيجة !!!
هذا ملف الكود في المرفقات
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !