سؤال

باستخدام هذا الرمز

var sw = window.screen.width;
$.post("http://www.example.com/track.php", {result: sw
}, "html");

و $ _server ['result'] ؛ في الخادم ، أحاول الحصول على عرض Sreen لكنه لا يعمل. إنه شيء خاطئ في "النتيجة". أنا جديد في JavaScript و JQuery ...

http://api.jquery.com/jquery.post/

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

المحلول

$_SERVER يحتوي على متغيرات الخادم ، أي أشياء مثل نظام التشغيل وعنوان URL المرجع والمسارات إلى مجلدات مختلفة على الخادم.

ما تبحث عنه بدلاً من ذلك هو إما $_POST صفيف ، و $_GET صفيف ، أو $_REQUEST مجموعة مصفوفة. ربما أذكر ما هو واضح هنا ، ولكن هذا ما يحتوي عليه:

  • $_POST يحتوي على قائمة بجميع المتغيرات المنشورة في البرنامج النصي.
  • $_GET يحتوي على قائمة بجميع المتغيرات في سلسلة الاستعلام (على سبيل المثال: someScript.php?x=1&y=2)
  • $_REQUEST يحتوي على دمج $_POST, $_GET و $_COOKIE (عادة في هذا الترتيب). لا أوصي باستخدام هذا: يجب عليك أعرف الطرق التي تستخدمها للحصول على المتغيرات في البرنامج النصي واستخدام هذا الصفيف على وجه التحديد.

في حالتك ، تحتاج إلى إلقاء نظرة على $_POST مجموعة مصفوفة. من السهل دائمًا تشغيل هذا مرة واحدة:

print_r($_POST);

سيظهر لك هذا كل ما تم نشره في تلك الصفحة.

نصائح أخرى

ترسل وظيفة JQuery $ .post طلبًا نشرًا إلى الخادم ، مما يعني الوصول إلى قيمة "النتيجة" ، تحتاج إلى الحصول عليها من $ _post superglobal.

جرب $ _post ['result'] بدلاً من $ _server ['result'].

قد تساعد هذه الأوصاف (المصدر: http://www.nusphere.com/php/php_superglobals.htm):

  • $ _post- يمثل SuperGlobal $ _post البيانات المرسلة إلى البرنامج النصي PHP عبر HTTP Post. هذا عادة ما يكون شكل مع طريقة نشر.
  • $ _Server- يمثل superglobal $ _server البيانات المتاحة لنص PHP من خادم الويب نفسه (وليس ما تبحث عنه)
  • $ _request- $ _request superglobal عبارة عن مجموعة من $ _get و $ _post و $ _cookie (هل ستعمل ، ولكن لماذا يحصل البحث وملف تعريف الارتباط عندما تعرف أن القيمة في المنشور؟)

محاولة القيام:

echo $_POST['result'];

يستخدم $_REQUEST['result']

$_SERVER هي صفيف تحتوي على معلومات مثل الرؤوس والمسارات ومواقع النصوص. يتم إنشاء الإدخالات في هذه الصفيف بواسطة خادم الويب. ليس هناك ما يضمن أن كل خادم ويب سيوفر أيًا من هذه ؛ قد تتجاهل الخوادم بعضًا ، أو توفر للآخرين غير مدرجين هنا.

$_REQUEST هي صفيف نقابي يحتوي بشكل افتراضي على محتويات $_GET, $_POST و $_COOKIE.

الطريقة الصحيحة هي الاستخدام $_POST['result'], ، كما اقترح الآخرين هنا.

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