في كثير من الأحيان يصبح من الضروري نقل البيانات من مستعرض العميل إلى ملف الخادم مع برنامج نصي لمعالجة هذه البيانات. لنلق نظرة على كيفية تنظيم نقل معلمات php إلى البرنامج النصي بالضبط.
انه ضروري
معرفة أساسية بلغات PHP و HTML
تعليمات
الخطوة 1
لنقل البيانات من نماذج الويب في HTTP (بروتوكول نقل النص التشعبي) يتم توفير طريقتين - GET و POST. وهي تختلف في طريقة إرسالها من تطبيق العميل (المستعرض) إلى تطبيق الخادم (البرنامج النصي القابل للتنفيذ php). تستخدم طريقة GET شريط العناوين لهذا الغرض. بمعنى ، يتم إلحاق أسماء وقيم المتغيرات التي تم تمريرها إليها مباشرةً بعنوان البرنامج النصي (أو URL - محدد موقع المعلومات) من خلال علامة استفهام (؟). على سبيل المثال ، قد يبدو عنوان URL بالشكل التالي:
هنا ، يتم تمرير البرنامج النصي search.php إلى متغير اسمه num بقيمة 30 ، ومتغير newwindow بقيمة 1 ، ومتغير آمن بقيمة off. الخادم ، بعد أن تلقى مثل هذا الطلب ، من قبل "؟" يفصل عنوان الملف ويقسم كل شيء آخر إلى أزواج من الأسماء والقيم المتغيرة. يتم ملء الأزواج الناتجة في المصفوفة $ _GET ، والتي سيتمكن نص php المحدد في العنوان من استخلاصها. في أبسط أشكاله ، قد يبدو رمز html النموذج لإرسال هذه البيانات من المتصفح إلى الخادم باستخدام طريقة GET كما يلي:
وأبسط برنامج php لتلقي هذه البيانات هو كما يلي:
<؟ php
num = $ _GET ['num'] ؛
$ newwindow = $ _GET ['newwindow']؛
$ آمن = $ _GET ['آمن'] ؛
?>
أهم عيوب تمرير المتغيرات باستخدام طريقة GET:
- كمية محدودة من البيانات ، حيث لا يمكن أن يتجاوز طول عنوان URL 255 حرفًا ؛
- لا يمكن نقل جميع أحرف كود html بهذه الطريقة ؛
- تكون البيانات المرسلة مرئية للمستخدم ، وهو أمر غير مقبول دائمًا من وجهة نظر أمنية ؛
الخطوة 2
يمكن تجنب هذه المضايقات والقيود باستخدام طريقة أخرى - POST. يستخدم مناطق خاصة من حزم الشبكة لنقل البيانات - الرؤوس. من جميع النواحي الأخرى ، تكون الاختلافات بين هذه الطرق ضئيلة - في النموذج أعلاه لإرسال البيانات ، سيتغير اسم الطريقة فقط:
وفي سكربت php ، اسم مصفوفة البيانات فقط:
<؟ php
الأسطوانات بالدولار = _POST بالدولار ['num'] ؛
$ newwindow = $ _POST ['newwindow'] ؛
$ آمن = $ _POST ['آمن'] ؛
?>