أساسيات البرمجة

 

مقدمة

حتى وقت قريب كان برمجة و تصميم  مواقع الأنترنت حكرا على عدد قليل من الناس و لكن مع تطور التقنيات ظهرت لغات حديثة سهلة التعلم نسبيا مما فتح باب جديد للجميع.

ما هو php ؟

الphp يرمز إلى Hypertext Preprocessor  و هي لغة تعتمد على المستضيف أو المزود و ليس على المتصفح بمعنى أن ترجمة شفرات الphp ستظهر نتائجها للجميع بنفس الطريقة مهما كان المتصفح الذي يستعملونه على عكس لغات كالجافا سكربت و التي قد تختلف نتائجها من متصفح  لآخر.

لماذا php؟

قد تتسائل لماذا استخدم الPhp  و لا استخدم لغات اخرى كالبيرل مثلا أو لماذا احتاج لتعلم لغة برمجة أساسا . أولا : لماذا تحتاج إلى لغة برمجة ؟ تصميم صفحات أنترنت بواسطة لغة html فقط سينشأ لك صفحة جامدة غير متفاعلة أو تفاعلية مع الزوار لكن لغات البرمجة مثل ال ب اتش ب سيتفتح لك منفذ واسع متعدد الخيارات ستتمكن من إنشاء صفحات تتفاعل معك و مع زوارك ، وقد يخطر ببالك إنك تستطيع إنزال أحد البرامج الجاهزة من مواقع مثل hotscripts.com لكن غالبا تكون هذه البرامج غير مجانية و إن كانت مجانية سيتطلب منك وضع إعلان للمصمم أو قد تحتاج إلى تغيير أو إضافة أو تعطيل خاصية أو ميزة في البرنامج .

فلغات البرمجة التفاعلية تساعدك على إضافة العديد من الميزات مثل المنتديات / برامج البطاقات/ بوابة الكترونية ... إلخ .

ماذا أحتاج ؟

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

إذا لم تكن تعرف ما إذا كان موقعك يدعم الب اتش ب جر سؤال مستضيف موقعك أو جرب أول برنامج سنستخدمه في هذا الدرس . و أن لم يكن يتوفر في موقعك فيمكنك أن تطلب من الشركة المستضيفة  لموقعك أن تركبه فهو برنامج مجاني و لن يكلف الشركة أي مبلغ إضافي.

ملاحظة

lمعظم شركات الاستضافة المجانية لا تدعم php


 

كتابة برنامج الphp ؟

في الحقيقة لا تحتاج إلى برامج إضافية لتحرير ملفات البي اتش بي يمكنك استخدام إي محرر للنصوص مثل برنامج  Notepad الملحق بنظام الويندوز . كما يمكنك تحميل عدد من المحررات الخاصة إذا أحببت.. لكننا سنطبق أمثلتنا على برنامج المفكرة Notepad.

بداية البرنامج؟

افتح برنامج المفكرة و أكتب

 


<?
ضع أوامر اللغة هنا
?>


 

هذان القوسان يخبران المتصفح أن ما بينهما هو أوامر للغة البي اتش بي و يجب تنفيذها و أي شي خارج هذان القوسان سيعتبر من أوامر Html  و سيتم تنفيذه على أنه Html.

كما أن هناك طرق أخرى لبدأ البرنامج  و لكن السابق أشهرها مثل.

 


<?php
ضع أوامر اللغة هنا
?>


 

 

 

 


<script language = "php">
ضع أوامر اللغة هنا
</script>


 

 

 

و الأخيرة مناسبة لبرامج مايكروسوفت فرونت بيج حتى لا يظهر مشاكل أثناء التصميم

برنامجنا الأول؟

أول برنامج سننشأه بسيط جدا يعتمد على

 


<?
phpinfo
();
?>


 

 

 

ستلاحظ الدالة Phpinfo ثم قوسان ثم الفاصلة المنقوطة ; هذا مثال بسيط لسطر برمجي بسيط. هذا الدالة البسيطة ستعرض لك جميع إعدادات خادمك بمعنى اصدار البي اتش بي المستخدم البرنامج الملحقة به ... إلخ .

افتح المفكرة و اكتب السابق و خزنها باسم

test.php

مثلا ولاحظ ان ملفات الPhp تأخذ غالبا امتداد Php

ستلاحظ شي مهم جدا أن السطر البرمجي ينتهي بالفاصلة المنقوطة و هو أمر مهم ويجب أن تتذكره دائما.

إنهاء و تجربة برنامجك

لو كنت ستجرب الملف على مستضيفك كل ما عليك هو إرسال الملف و استدعائه في المتصفح أما لو كنت ستجربه على سيرفرك الخاص ضع الملف في المجلد الخاص بالسيرفر الخاص واستدعه . لو ظهرت لك صفحة خطأ أو صفحة بيضاء فارغة معنى ذلك أن هناك خطأ تأكد من أنك لم تخطأ في الطباعة و انك لم تنسى وضع الفاصلة المنقوطة.

 

 

عرض النصوص

لعرض نص بواسطة كود بي اش بي الأمر سهل

هناك دالتان مسؤولتان عن هذا الموضوع أولا دالة Print

 


<?
    
print ("مرحبا ضع النص هنا ....");
    echo 
"هذه طريقة أخرى لعرض النص " ;
؟>


 

   

و الآن السطر الأول سيعرض

مرجبا ضع النص هنا

و السطر الثاني سيعرض

هذه طريقة أخرى لعرض النص

المتغيرات

ككل لغات البرمجة هذه اللغة تستخدم المتغيرات و المتغيرات هي وعاء نضع فيه قيمة معينة مثلا لاحظ المثال التالي

 


<?
    $mynumber 
1;
    echo 
$mynumber 
?>


 

 

 

في المثال السابق أنشأ متغيير سميناه mynumber  يمكن تسمية المتغيرات بالأسماء التي تريد و لكن يجب أن يسبقة علامة الدولار $ حتى يعرف البرنامج أن هذا متغيير .. أعطينا المتغيير القيمة 1 و بالتالي وضعنا في الوعاء القيمة واحد ثم استخدمنا الأمر echo لطباعة القيمة الموجود في المتغيير , و بالتالي لو خزنة هذا الملف و فتحته في متصفحك فكل ما سيظهر لك هو الرقم 1

مثال آخر و سنضع في المتغيير هذه المرة نص و ليس رقم

 


<?
    $mytext 
"مرحبا أنا الدكتور نت";
    echo 
$mytext 
?>


 

 

و يمكنك أن تحزر أن الناتج الذي سيظهر في المتصفح هو

مرحبا أنا الدكتور نت

و هنا ملاحظة مهمة النص أي نص يجب أن يكون كما تلاحظ في المثال السابق يجب أن يكون بين علامتي تنصيص يمكن اتسخدام العلامة المزدوجة " أو المفردة '  و سنعرف الفرق لاحقا.

تنسيق النص

لو لاحظت النتائج في الأمثلة السابقة تظهر بشكل غير مرتب و النص  يظهر بدون أي تنسيق و النص يحتاج إلى التنسيق  و هذا ما سنراه في المثال التالي

 


<?
    $mytext 
"<font size="14" color="red">النص هنا </font>" ;
    echo 
#mytext;
?>


 

 

 

و النتيجة ستكون التالي

النص هن

و ستلاحظ من المثال السابق أنه كان لنا الحرية لاستخدام أوسمة html  داخل علامتي التنصيص مع إضافة واحدة شفرات و أوسمة html تحتوي على قوس " و بالتالي نحتاج لنخبر البرنامج أن علامة التنصيص هذه ليست آخر علامة أو العلامة التي ستنهي الجملة و ذلك بإضافة علامة قبل علامة التنصيص و بالتالي يعرف البرنامج بان هذه الجملة لم تنته بعد.

قد تبدو هذه الطريقة لإنتاج نصوص منسقة و عرض شفرات الHtml  طريقة معقدة لكن سنتعرض في التالي لطريقة أسهل خاصة إذا ما أردت إخراج نصوص كبيرة.

 

 

الجمل الشرطية.

تستخدم الجمل الشرطية بواسطة الأمر if  للمقارنة ما بين شيئين أو قيمتين و إصدار حكم . بمعنى لو تحقق هذا الشرط if أفعل كذا و إلا else قم بعمل آخر .

الصيغة

 


<?
if (جملة شرطية شي يساوي شي مثلا ){
    
قم بعمل كذا     
}
else{
    
 قم بعمل آخر 
}
?>


 

 

 

غالبا نحن نستخدم الجمل الشرطية لمقارنة المتغيرات مثلا

 


<?
    
if ($username == "admin"){
        echo 
"فضلا أدخل كلمة المرور" ;
    }else{
        echo 
"فضلا أدخل اسم المستخدم ";
    }
?>


 

 

 

و الآن الجملة سنقارن لو كان محتوى المتغيير username يساوي كلمة admin نفذ كل الأوامر الموجودة بين القوسين{ } الأسودين و كتبسيط وضعنا أمر واحد و هو طباعة جملة  فضا أدخل كلمة المرور و لكن لو كان اسم المستخدم ليس admin  فسينفذ البرنامج الأوامر بين القوسين الأزرقين .

هناك طرق كثيرة للمقارنة

 


<?
if ($enteredpass == $passwordلو كان محتوى المتغييرين متساويين
?>


 

 

 


<?
if ($date $finishedلو كان محتوى المتغيير الأول أكبر من الثاني
?>


 

 

 


<?
if ($name == "" || $email == "" || $password == "") {
         echo 
"Please fill in all the fields";
}
?>


 


 

العلامة  || ترمز إلى أو فلو كان المتغيير الأول فارغ أو المتغير الثاني فارغ أو الثالث فارغ اطبع الجملة التالية  أي لن تتم العملية أو كان أي من المتغيرات فارغة

حلقات التكرار

حلقات التكرار تقوم بتكرار أمر معين حتى يحدث الشرط مثلا

 


<?
$times 
5;
$x 0;
while (
$x $times) {
    echo 
"Hello World";
    
$x=$x+1;

?>

 

أولا وضعنا قيمة للمتغير timesو جعلناه يساوي 10  و الx يساوي 0 سنبدأ الحلقة بكلمة while  طالما المتغير x  أصغر من المتغير times اطبع الجملة hello world ثم اضف 1 إلى المتغيير  x ليصبح قيمة الx هي 1 ,و من ثم سيعود و يقارن بين قيمة x و التي تساوي 1 و قيمة times التي تساوي 5 و سينفذ الأوامر بين القوسين { } حتى تصل قيمة x إلى 6 و بالتالي سيكون أكبر من times و سيتوقف و لن ينفذ الأوامر بين القوسين كون الشرط انتفى

المتسلسلات array

وهو متغير يحتوي على أكثر من قيمة مثلا متغيير يحتوي على عدد من الأسماء و يمكنك التفكير فيه كجدول

 

4 3 2 1 0

يمكنك اعتبار الجدول السابق متغيير اسمه name

 


<?
$names
[0] = 'محمد';
$names[1] = 'احمد';
$names[2] = 'علي';
$names[3] = عبدالله';
$names[4] = 'فهد';
?>

 

 

مثلا المتغيير يحتوي في الخانة 0 على اسم محمد و هكذا لو اردنا إضافة اسم  جديد نضيف

 


<?
     $names
[5] = 'خالد ;
?>


 

 

 

القراءة من المتغييير

مثلا لو أدرنا عرض الاسم الموجود في الخانة 4 نكتب التالي

 

<?
     
echo "الشخص التالي هو :    $names[4]";
?>


 

 

 

و بالتالي ستطبع الجملة التالية

الشخص التالي هو :       فهد

لو أردنا عرض كل القيم علينا استخدام حلقة تكرار

مثلا


 

 


<?
$number 
6;
$x 0;
while (
$x $number) {

    echo 
"Name  is $names[$x]
"
;
    ++
$x;
}
 
?>


 

 

 

لاحظ معنا المثال السابق أولا المتغير Number يحدد لك عدد الخلايا أو القيم في المتسلسلة  و المتغير x  هو العداد .. في الجملة الشرطية نلاحظ طالما لم تتساوى قيمة ا العداد x مع المغير number نفذ مجموعة الخطوات الزرقاء  اطبع الاسم في الخانة x لو كانت x تساوي 2 ستطبع قيمة الخانة 2 و هي في مثالنا علي و في السطر التالي سنزيد قيمة X بواحد لتصبح 3 , و سنستمر حتى تنتهي الحلق ة عندما تتساوى قيمة الx مع 6

 

 

 


Copyright © www.kettaneh.net