سؤال

وكنت تستخدم لوضع معرف في URL لتعيين عنصر في قاعدة البيانات:

و/ الفنادق / 1

ولكن ماذا لو كنت ترغب في الحصول على اسم الفندق مع معرف 1 ووضعها في URL واستبدال المساحات مع الواصلات؟

و/ الفنادق / فندق بيانكا

وأستخدمه Kohana وهناك مفهوم التوجيه (وهي جميلة الحاضر بكثير في كل الأطر MVC)، ولكن أنا لا يمكن أن يبدو للحصول على عمل

وكيف أذهب عن القيام بذلك؟

هل كانت مفيدة؟

المحلول

وبما أنني لا يعرفون شيئا عن kohana، وانا ذاهب لتقديم الممكنة PHP الجواب.

هل يمكنك تمرير معرف من خلال URL وتطلب ذلك مع PHP، وإذا كنت تمرير اسم الفندق، لديها التي تتوافق مع البند في قاعدة البيانات مع اسم الفندق، ومجالها؟

نصائح أخرى

لهذا الغرض يمكنني استخدام حقل خاص في جدول ديسيبل اسمه رابط :) هكذا على سبيل المثال / تحكم / فتح / urladress سوف ننظر لحقل رابط مع "urladress 'داخل لفتح: D أنا لا أعتقد أنه يمكنك تغيير اوري على ذبابة)

في وحدة تحكم يمكن البحث في قاعدة البيانات عن الاسم. اعتدت على Kohana 2.3.4 مع ORM ذلك هذه هي الطريقة التي أود أن تفعل ذلك:

// first you need to replace all hyphens with spaces
$name = str_replace('-', ' ', $parameter);

// search your db for the hotel by name
$hotel = ORM::factory('hotel')->where('name', $name)->find();

// check to make sure it is loaded
if ( ! $hotel->loaded)
{
    // Do something i.e. 404 page or let them know it wasn't found
}

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top