سؤال

كولز ملاحظات الإصدار:

index.php?map_id=foo يتم تحميلها في iframe على www.not-my-domain.com.مؤشر مجموعات SESSION['map_id'] = foo.ملف فلاش يحاول الحصول على SESSION['map_id'] من خلال Authenticate.php ولكن Authenticate.php لا يوجد لديه القيم المحددة أي SESSION varaibles.

-- الأولى فقط-تحميل عبر المجال المسألة.

مطول:

لدي مؤشر حين أين يمكنني تعيين: SESSION['map_id'] = foo

ملف الفهرس ثم تحميل ملف فلاش.عند تهيئة الفلاش يصل أحد 'Authenticate.php' ملف صدى هذا SESSION['map_id'] ويتم تحميلها في فلاش عبر LoadVars.فلاش ثم يعرض البيانات المناسبة.هذه الخطوة لا يمكن أن يتم بطريقة أخرى

هذا كل شيء يعمل على ما يرام على موقعنا الرئيسي.المشكلة تأتي عندما نحاول أن منفذ إلى مواقع أخرى من خلال توفير الإطار تضمين رموز:

<iframe src="http://www.mydomain.com/?map_id=foo&code=bar" ... ></iframe>

على حمولة جديدة من تضمين رمز من موقع آخر (www.anotherdomain.com) ، يبدو أن SESSION المتغيرات قد دمرت ، فلاش ببساطة يقول أنها فارغة.( $map_id النواتج فارغة )

مؤشر الملف لا يزال بشكل صحيح صدى $map_id كما 'فو' ، يبدو فقط 'Authenticate.php' لا يمكن الوصول إلى الملف SESSION varaibles.

لقد كفل session_start() هي موجودة في كل الملفات المناسبة.

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

المحلول

دورة PHP معرفات يتم تمريرها من خلال ملفات تعريف الارتباط بشكل افتراضي ولكن لا يمكنك نقل ملفات تعريف الارتباط عبر المجالات.محاولة تمرير معرف جلسة العمل من خلال url بدلا من ذلك.

هنا هي الصفحة المناسبة في php الوثائق.

هناك عدد قليل من الطرق التي يمكنك الحصول على php تمرير معرف جلسة في عنوان url إذا كان لا يتم القيام به تلقائيا.

  1. يمكنك يدويا تمرير معرف جلسة العمل في url (يجب أن يأتي قبل الآخر على المتغيرات):

    <iframe src="http://www.mydomain.com/?&map_id=foo&code=bar">

  2. يمكنك تعطيل ملفات تعريف الارتباط ، مما اضطر كل طلب معرف جلسة إضافتها تلقائيا إلى عنوان url:

    ini_set("الدورة.use_cookies","0");

  3. يمكنك تحرير url_rewriter.العلامات الإعداد الذي يحكي PHP التي html العلامات كتابة مع معرف جلسة العمل.هنا iframe=src تم إضافتها إلى المجموعة الافتراضية:

    ini_set("url_rewriter.الكلمات", "a=a href المنطقة=href,frame=src,iframe=src الإدخال=src شكل=fakeentry");

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