الوب الديناميكي
لغة php
م.طارق جبر 22-2-2004
مقدمة.
لقد كان الهدف الأساسي من الوب،
هو تبادل المعلومات بين الأشخاص على الشبكة مهما
اختلفت أنواع الحواسيب وأنظمة التشغيل التي يعملون
عليها، ولكن بعد أن حققت النجاح الكبير والانتشار
الواسع، أصبحت بيئة جيدة من أجل إقامة النشاطات
والأعمال الإلكترونية. تتطلب هذه النشاطات التفاعل
بين الصفحات والزائرين لها. وهنا ظهرت الحاجة إلى
الوب الديناميكي – أي الصفحات المتغيرة المحتوى
بحسب شروط معينة – وقد ظهرت العديد من اللغات والتقنيات
التي تسمح بهذه الآلية، منها CGI, ASP, JSP, PHP.
تحتوي الصفحات الديناميكية على تعليمات HTML العادية
إضافة إلى تعليمات إحدى اللغات التي ذكرناها، PHP
مثلاً. يقوم المخدم قبل إرسال صفحة الوب إلى الزبون
الذي طلبها بالتعرف على نوع هذه الصفحة وذلك بحسب
لاحقتها، فإذا كانت اللاحقة html أو htm يقوم المخدم
بإرسال الصفحة دون أي تدخل، ولكن في حال كانت اللاحقة
php مثلاً فإن المخدم يقوم بقراءة التعليمات، فيرسل
تعليمات HTML مباشرة إلى الزبون، أما تعليمات PHP
فيقوم بتنفيذها. هذه التعليمات يمكن أن تقوم بوظائف
عديدة مثلاً الوصول إلى قاعدة معطيات. قد تُنتج
تعليمات HTML جديدة يتم إرسالها إلى متصفح الوب
الخاص بالزبون والذي يقوم بدوره بتنفيذ تعليمات
HTML.
يمكن أن نذكر كمثال موقع الجمعية المعلوماتية السورية.
فبعد أن يتم الولوج إلى الموقع، يمكن للمستخدم أن
يحصل على معلومات عن أرقام الهواتف التي دخل منها
إلى الإنترنت وكذلك الأوقات التي دخل فيها، وهذه
المعلومات سوف تختلف من مستخدم إلى آخر رغم أن الصفحة
المستخدمة هي نفسها لجميع المستخدمين، والذي يحصل
هو أن التعليمات الموجودة في الصفحة تقوم بالوصول
إلى قاعدة المعطيات، وبحسب الاسم تحصل على معلومات
مختلفة في كل مرّة.
? كيف يمكن الحصول على الأدوات اللازمة
من أجل كتابة صفحات PHP
في الواقع الأدوات الخاصة بـ PHP تكون على شكل حزمة
في ملف من نوع Zip يمكن تحميله من الموقع التالي:
http://www.php.net/downloads.php
وهي مجانية ومفتوحة المصدر ويمكن
الحصول على المصدر من نفس الموقع.
كيف يمكن تحضير البيئة من أجل البدء
بالعمل؟
نحتاج إلى الحزمة سابقة الذكر، وكذلك نحتاج إلى
مخدم وب web server، وهناك العديد من الأسماء التي
يمكن ذكرها هنا منها: Apache و IIS(Internet Information
Server) الخاص بـ Microsoft. وهذا المخدم موجود
بشكل افتراضي في إصدارات Windows NT/2000/XP.
الخطوات:
1- من أجل تثبيت IIS في إصدارات NT/2000/XP نقوم
بما يلي:
a. من لوحة التحكم => إضافة وإزالة البرامج =>
مكونات النظام (windows component)
b. نختار IIS
c. نضع القرص المضغوط الخاص بـ Windows
d. نضغط موافق.
2- نقوم بفك ضغط حزمة الـ PHP باستخدام أي برنامج
ضغط متاح مثل WinZip.
3- ننقل الملف php.ini-dist إلى المجلد الخاص بـ
Windows ونقوم بتغيير لاحقته ليصبح php.ini.
4- نفتحه بواسطة أي محرر نصوص ونبحث عن المتحول
extension_dir ونغير قيمته لتصبح extension_dir
= c:\php.
5- نقوم بتشغيل برنامج التحكم بمخدم الوب (IIS)،
وذلك من لوحة التحكم => أدوات الإدارة =>
Internet Services Manager
6- نختار الصفحة "Home page"
7- بالضغط على الزر "Configuration" تظهر
النافذة التالية:

8- وبعد الضغط على الزر "Add" ندخل المعلومات
كما هو ظاهر في الشكل السابق.
9- نضع الصفحات الجديدة في المجلد c:\Inetpub\wwwroot.
طبعاً يمكن أن نضعها في أماكن أخرى ولكنه مكان جيد
للبدء بما أننا لا نعرف الكثير من التفاصيل.
مثال:
في الواقع جميع هذه اللغات تتعامل بشكل خاص مع نماذج
HTML (HTML Forms) والتي تعتبر حاوية تحتوي عناصر
الإدخال مثل مربع نص Text Box، صندوق اختيار Check
Box وغيرها.
بالنظر إلى المثال التالي:
<html>
<head>
<title> HTML page </title>
</head>
<body>
<form method=”Get” action=”test.php”>
<input type=”text” name=”textField”>
<input type=”submit” value=”إرسال”>
</form>
</body>
</html>
نجد أننا وضعنا عناصر الإدخال على نموذج Form يتمتع
بالخاصية method وقيم هذه الخاصية متعلقة بالبرتوكول
http ولكن مبدئياً لنعطيها القيمة Get. أما الخاصية
الأخرى action فهي تحمل عنوان صفحة php التي سوف
تعالج هذا الطلب. يتم إرسال الطلب مع محتويات النموذج
(أسماء حقول الإدخال مع قيمها) إلى الصفحة المصرح
عنها في الخاصية action عند الضغط على زر من النوع
submit.
لنقوم الآن بكتابة صفحة php تقرأ
قيمة حقل الإدخال textField في الصفحة السابقة وتطبعه
ولنسمي هذه الصفحة test.php.
الوسم الخاص بـ php هو <? .. ?>.
<html>
<head>
<title> PHP page </title>
</head>
<body>
<p>The value of the textField is :
<?
echo $textField;
?>
</p>
</body>
</html>
نرى من المثال البسيط السابق تعليمة echo الخاصة
بالطباعة. كما نرى أن حقل الإدخال الموجود في الصفحة
السابقة والذي اسمه textField يمكن الوصول إلى قيمته
بكتابة نفس الاسم مسبوق بإشارة $.
كيف يمكن الحصول على مساعدة في
حال احتجنا إليها؟
يمكن ذلك بتحميل ملف المساعد الخاص
باللغة من الموقع التالي:
كما يمكن استخدام محركات البحث كما
رأينا سابقاً.
|