1- دروس PHP للمبتدئين.. الدرس الأول
لغة البرمجة PHP هي لغة جديدة مخصصة لعمل البرامج القائمة على الويب جهة المزود، وتتميز بسهولتها المتناهية وقدراتها العالية.
* ما هي لغة الـ PHP ؟
هي لغة برمجة تستخدم لتطوير مواقع الويب تم اختراعها و إنشاؤها وتطويرها في عام 1994 بواسطة راسموس ليدروف.
لقد كان هذا الرجل يتابع عدد من المهتمين بسكربتاته التي ينتجها بلغة بيرل وعندما رأى أن هناك عدداً كبيرا يهتم بسكربتاته بدأ بإنشاء أدوات للصفحات الشخصية ذات مستوى عالٍ قام بتسميتها بـ
Personal Home Page tools (PHP)
بعدها قام بإنشاء scripting engine و form interpreter وهو ماكان يسمى في ذلك الوقت بـ php/FI أو php2 .
منذ ذلك الوقت مرت هذه اللغة بمراحل تطوير عديدة وقوية وتحسينات عبر المئات من مطوري الويب في جميع أنحاء العالم.
الفريق الفعلى المختص بهذه اللغة الآن يتكون من 6 أشخاص من بينهم المطور الرئيسي ليدروف.
في المصطلح التقني لهذه اللغة نقول أنها:
Cross Platforms, Embded HTML, Server Side, Web scripting ******
Cross Platforms:
نعني بهذا المصطلح أن لغة ال PHP تعمل على كمبيوترات تحتوي على أكثر من نظام تشغيل.. مثلاً يمكننا تشغيلها على اللينوكس ويمكننا أيضاً تشغيلها على الوندوز بشكل ممتاز.
Embded HTML:
تعمل هذه اللغة في ملفات تحتوي على خليط من لغة html و php .
Server Side:
تعمل ملفات ال php على مزود للويب يدعم php فلا يضطر المستخدم إلى تركيب برنامج معين على جهازه لكي يتفاعل مع هذه اللغة.
Web Scripting ******:
نعني بهذا المصطلح أن هذه اللغة لعمل صفحات الويب أو بالأصح لتطوير وعمل تطبيقات (برامج) للويب.
في الواقع عندما نتصفح برنامج php عبر مستعرض للإنترنت مثل الانترنت اكسبلور أو النافيجتور فإنه لا يشترط أن يكون هذين المتصفحين أو أي متصفح آخر يدعمون PHP.
( وهذا يجعلنا نطمئن من أننا لن نخوض الحرب التي يخوضها المتصفحين فهناك أشياء في النافيجتور لا يدعمها الانترنت اكسبلور لأن الجافا مثلاً لغة من صنع شركة صن ولغة الفيجول بيسك سكربت من صنع شركة مايكروسوفت مما يعني أن النافيجتور لا يدعم الفجول بيسيك سكربت وهذا شيء مقلق جداً ).
باختصار إننا لا نطالب المستخدم ببرنامج معين لكي يرى صفحة الويب التي صنعناها.
عندما يطلب المستخدم صفحة ما مثلاً: https://www.arabbuilder.com/index.php (https://www.arabbuilder.com/index.php) فهذا يعني أنه يطلب صفحة تحتوي على برنامج php (وليس شرطاً).
- هل سيرى المتصفح الشفرة التي استخدمها؟
لا تخف لن يستطيع لأن البرنامج المعمول بـ php يترجم في السيرفر على شكل html فلن يصل لمستخدم برنامجك الشفرة التي تستخدمها مما يحافظ على سريه برامجك :) .
من المفترض قبل أن تبدأ في التطوير بلغة php أن يكون لديك خلفية كافية عن html وهناك دورة ممتازة ومتقدمة عن html تجدها على الرابط التالي/
https://www.arabbuilder.com/learn/lessons/html/index.php (https://www.arabbuilder.com/learn/lessons/html/index.php)
وأيضا هناك موقع HP الذي يعتبر الموقع الأول الذي أعطى تفاصيل التطوير بهذه اللغة وفيه الكثير من الدروس المفيدة جداً في هذا المجال.. تجده على الرابط التالي/
https://www.khayma.com/hpinarabic/htmintro.html (https://www.khayma.com/hpinarabic/htmintro.html)
* لماذا PHP ؟
1. التفاعل مع صفحات الويب:
يأتي إليك مدير مكتبك ويقول لك ماذا تستفيد شركتي من كونك مبرمج php؟ هاه؟
سؤال صعب أليس كذلك ؟
انظر إليه بكل برود، وثق أنك ستنتصر عليه بردّ صاعق.
في الواقع قد تكون html قد نفعتنا كثيراً حينما أردنا تصميم مواقع الويب ولكنها لاتكفي إلاّ إذا كان موقعك استقرارياً، أي أنك لا تجدد فيه إلاّ في الشهرين مرة أو في الثلاثة شهور مرة وتتعب جراء ذلك.
ولكن عندما تريد أن يتجدد موقعك يومياً.. مثلاً: يعطيك الأخبار يومياً ويوفر محركات بحث تساعد المستخدم من الحصول على شيء معين في موقعك دون تعب أو قائمه بريدية أو تريد أن تعرف ما رأي الزوار في موقعك يومياً أو تريد صناعة متجر الكتروني أو صفحة إعلانات تتجدد ديناميكياً. ستجد فعلاً أنك تحتاج إلى لغة PHP.
واجعل مديرك يقوم بتقطيع البصل إذا كان يريد فعلها بال html. أليس ذلك انتصاراً رائعا :) .
2. المجانية:
لغة php مجانية أي أنك لا تحمل همّاً.. لا تراخيص ولا محكمات دعائية وتمضي قدماً دون توقف وليست مثل Asp.
بالإضافة إلى أنه يمكنك رؤية الشفرة المصدرية التي تجعل هذه اللغة تزيد تطوراً يوماً بعد يوم :) .
3. وجود مواقع سيرفرات تدعمها بكثرة:
خبر سارّ أليس كذلك ؟ ;)
يوجد الكثير من المواقع التي تدعم php والتي منها المجاني ومنها الذي يأخذ منك قدراً معيّناً على الاستضافة. يمكنك أن تجد دعماً مجانياً لل php في هذه المواقع/
https://d1d.net (https://d1d.net/) https://www.f2s.com (https://www.f2s.com/) https://datablocks.net (https://datablocks.net/) https://www.psend.com (https://www.psend.com/)
4. التفاعل مع قواعد البيانات:
بينما جعلت شركة مايكروسوفت Asp متوافقاً مع برمجياتها بشكل احتكاري، فإن ال php تدعم أغلب أنواع قواعد البيانات، ولم تحتكر على نوع معين وإليك هذه الانواع/
-Adabas -dBase -Empress -FilePro -Informix -InterBase -mSQL -MySQL -Oracle -PostgreSQL -Solid Sybase -Velocis -some UNIX distributions' dbm -any database that supports ODBC (Open Data Base Connectivity).
* PHP vs. ASP :
بينما تستخدم ال ASP لغة الفيجول بيسيك في عمل سكربتات متفاعلة مع الويب فإنها تحتاج في تشغيلها إلى سيرفر Iis أو PWs وحتى الآن يعد تشغيلها على سيرفر الأباتشي أمراً فيه صعوبة.
ومع أن هناك شركة أنتجت برنامجاً معيناً وخاصاً لكي يعمل Apche ويدعم Asp فإنه إلى الآن يستلزم أن يكون لديك وندوز NT ولا يمكنك تشغيله بشكل ممتاز على وندوز ملينيوم.
بالإضافة أن ال Asp تعتبر أبطأ من ال PHP، وغير ذلك أن ال php ليست مقتصرة على IIS بل تشتغل على Apache و Omni httpd بأفضل ما يمكن.
وعلى العموم لاتقلق فإنك حتى إن كنت مبرمج ASP وترتاح معها كثيراً.. فإنك تستطيع تحويل شفرة Asp إلى php عن طريق برنامج يقوم بذلك تجده على الرابط التالي/
https://asp2php.naken.cc/ (https://asp2php.naken.cc/)
* PHP vs. Perl :
تعتبر البيرل معقدة وصعبة في حين أن ال php يقوم بعمل نفس الوظيفة التي تقوم بها برامج البيرل بشفرة أقل وبساطة أكثر.
في الدروس القادمة.. عند كتابة برنامجك الأول بال PHP ستجد أنك في حاجة إلى شيء ينفذه، لذلك سأقوم بشرح كيفية تركيب سيرفر Apache على بيئة وندوز. أيضاً سنتعرض لبعض المصطلحات والمفاهيم العامة في لغة ال PHP.
تكلمنا عن أن سكربت ال php يتكون من ثلاث أشياء: نص وشفرة php وشفرة html.
لا نستطيع وصف ال html بأنها لغة برمجة بشكل جيد، ونستطيع أن نقول أن ال php لغة سكربتات Scripting ******.. لأنها تضيف قدرات html عليها مثل الجداول والفريمات بشفرة html بداخل شفرة ال php.
هناك لغات تسمى لغات سكربتات قد تكون متآلفاً معها مثل الجافا سكربت والفجول بيسك سكربت، باستثناء أن الفرق بينها وبين الphp هو أن الphp لغة تعتمد على جهة المزود أي السيرفر ويمكنك تخصيص المتصفح الذي يستعرضها.
تجعلنا الhtml نضمن سكربتات الphp فيها ضمن قواعد لذلك لكي نستطيع تشغيلها، ولكننا لا ننسى أن امتداد الملفات يظلّ كما هو php أو php3 بدون تغير فيه. لكي يتم إرسال السكربت إلى مكينة الترجمة (Scripting Engine) التي تقوم بترجمة السكربت إلى html (كأنك تترجم من عربي إلى انجليزي أو العكس).
* مفهوم الـ Parsing والـ Execution :
يمكن أن نقسم عملية الترجمة التي يقوم بها سيرفر php إلى قسمين أو عمليتين:
العملية الأولى / هي أن السيرفر يقوم أولاً بفحص قواعد اللغة، وهذا لا يضمن أن السكربت صحيح مئة بالمائة ولكنه تدقيق في الأوامر وقواعد اللغة وهذا ما يسمونه بال Parsing.
العملية الثانية/ هي تنفيذ السكربت بعدها وإخراجه على شكل شفرة html، وهذا ما يسمى بال Execution .
بقي أن نقول أمراً معروفاً وهو أن السكربتات نوعين:
النوع الأول / وهو ما ينفذ من جهة المزود Server-Side Scripting .
النوع الثاني/ ما ينفذ من جهة المستعرض (صفحة انترنت). مثل: الجافا سكربت وغير ذلك.
- دروس PHP للمبتدئين.. الدرس الثالث
[ تشغيل ال ****** والسكربت الأول ]
درس اليوم يتكلم عن تجهيز جهازك ليعمل كمخدم لل php أو سيرفر يدعم ****** لكي تستطيع رؤية سكربتاتك وتنفيذها.
أيضاً ستقوم بصناعة السكربت الأول لك في لغة الـ PHP.
حسناً سنحتاج إلى:
أولاً / ملقم ويب (Web Server) .
ثانياً/ نحتاج إلى برنامج يقوم بتحويل جهازك إلى ملقم ويب.
وهناك عدة برامج لذلك الغرض منها: Apache Web server - Omni Httpd - Pws - IIS .
أيضاً هناك برنامج PHP Triad أكثر من ممتاز.. وسنقوم بشرحه.[/color]
* شرح برنامج PHPTriad :
تجدونه على الرابط التالي:
https://download.sourceforge.net/phptriad/phptriadsetup1-2.zip (https://download.sourceforge.net/phptriad/phptriadsetup1-2.zip) [/color]
ستأتي لك الشاشة التالية اضغط زر Next حتى تكمل عملية تنصيب البرنامج على الجهاز.
(https://www1.glaxu.net/up3/uploaded/php/php3-1.gif)
بعد نهاية التحميل.. قم بتشغيل الأباتشي من ( ابدأ ثم البرامج ثم PHPTriad for Windows ).
(https://www1.glaxu.net/up3/uploaded/php/php3-2.gif)
Apache:
لتشغيل سيرفر الأباتشي وستظهر لك شاشة دوس.
Start Mysql :
لتشغيل سيرفر ال mysql ويجب تشغيله إذا كان برنامج php يتطلب تشغيله. [/color]
الآن اكتب في المتصفح: https://localhost/phpinfo.php (https://localhost/phpinfo.php)
(https://www1.glaxu.net/up3/uploaded/php/php3-3.gif)
بقي عليك أن تعرف أن المجلد الذي يجب أن تضع فيه ال php هو: C:apachehtdocs
ويمكنك تغيير هذا الملف بواسطة تعديل الملف httpd.conf .[/color]
ولتفاصيل أكثر حيال هذا الموضوع يمكنك مراجعة موقع المطور العربي:
https://www.arabbuilder.com/learn/lessons/server2/ (https://www.arabbuilder.com/learn/lessons/server2/)[/color]
وأيضاً يمكنك مراجعة مجلة سوالف حيال طريقة أخرى:
https://www.swalif.net/softs/article.php?sid=179 (https://www.swalif.net/softs/article.php?sid=179)
https://www.swalif.net/softs/sections.php?op=viewarticle&artid=8 (https://www.swalif.net/softs/sections.php?op=viewarticle&artid=8)[/color]
الفائدة من تركيب البرنامج هي أن نستطيع تشغيل السكربتات التي نصنعها بالإضافة إلى مميزات كثيرة تجدها موجودة في موقع المطور العربي وسوالف بالتفصيل.
* صناعة السكربت الأول لك :
- ما هو المطلوب منك لصناعة السكربتات؟
كل ما هو مطلوب منك محرر نصوص بسيط مثل ال Notepad. أو محرر نصوص مخصص للعمل مع php.
وهناك الكثير منها ولكن الأفضل حتى الآن هو: PHP Corder .. وهو مجاني تماماً يمكنك تحميله من هنا:
https://www.php-ide.com/phpcoder/pr3setup.exe (https://www.php-ide.com/phpcoder/pr3setup.exe) [/color]
عند تشغيلك لهذا البرنامج ستأتيك الشاشة التالية:
(https://www1.glaxu.net/up3/uploaded/php/php3-4.gif)
تنفس الصعداء فلست أتمنى منك أن تفهم كل ما ترى :). ستجد الشفرة التالية مكتوبة وجاهزة:
Title here!
[/color]
قم بمسح الشفرة عن بكرة أبيها :). والآن عليك أن تعرف كيف تكتب الشفرة.
في الواقع شفرة php تبدأ بوسوم ولكن هذه الوسوم تختلف عن وسوم html، ويمكنك تطبيق أي من الوسوم التي تريدها.
والوسوم هي كالتالي:
[list=1]
[*] ... ?>
[*]
[*]... ****** ******="php"> ... ******
[*]<% ... %>
[/list]الأخيرة تستخدم في سكربتات asp أيضاً. وفي الواقع يمكنك جعل البرنامج الذي نستخدمه يساعدك في كتابة الوسوم.
[/b](https://www1.glaxu.net/up3/uploaded/php/php3-5.gif)