مشاهدة النسخة كاملة : الطريق الى php :تعالوا نتعلم !
samer kouta
04-02-2009, 02:56 AM
على بركة الله نبدأ درسنا الأول
الفصل الأول :بدائيات لغة PHP
http://www.man-u.net/vb3/images/fa9l.gif
-تعريف لغة PHP :
PHP عبارة عن لغة تسمى ( Server Side Sc ripting Language ) ونعني بذلك انها تترجم من جهة الخادم وليس من جهاز المستخدم. لنضرب مثالا واقعيا على ذلك , عند الدخول الى الدردشة يجب عليك ان تقوم بتحميل (( JAVA VM )) على جهازك لتتمكن من الدخول ولكن اذا قمت بزيارة اي موقع يستخدم لغة PHP فلن يكون هناك حاجه لتنصيب او تحميل اي برامج مساعدة. فما وراء الكواليس كله يحصل في الخادم (( Server )), صممت هذه اللغه خصيصا للمواقع. ومن ضمن صفحات HTML يمكنك ادراج لغة PHP بداخلها لكي تنفذ في كله مرة قمت بزيارة الصفحة.
بدأت لغة PHP بمجهود شخص واحد يسمى ( Rasmus Lerdorf ) في سنة 1994 ومرت بثلاث مراحل جذرية لنرى ماهي عليه الان, حتى انه في سنة 2002 كان عدد المواقع التي تستخدمها اكثر من 9000000 (( تسعة مليون )) موقع. PHP لغة برمجة متاحة للكل لتطويرها او العمل عليها وهذا ما يسمى ( Open Source ). قديما كان اختصار PHP هو ( Personal Home Page ) ولكن تغيرت الى الاسم الحالي ( Hypertext Processor ). النسخه الحالية للغة PHP هي 5 وقد حصل بها تطور كبير وتغيرات جذرية كبيرة واصبحت اقوى بكثير من ما هي عليه الان.
http://i215.photobucket.com/albums/cc261/yassinenho/l1e1.gif
( مثال 1 : لاحظ انك لا تحتاج الى مترجم PHP على جهازك الشخصي )
قوة لغة PHP :سوف اقوم بذكر قوة لغة PHP على شكل نقاط
+الاداء العالي :تعتبر اللغه جدا مميزه وفعاله , حتى مع دعمها بتقنيه ZEND اصبحت اقوى , بحيث يمكن ان تتحمل ملايين الاوامر في اليوم الواحد
+دعمها لعدد كبير من قواعد البيانات :تدعم لغة PHP عدد كبير من قواعد البيانات منها MySQL و mSQL و Oracle و DBM و وغيرها الكثير
+الدوال الداخليه او ( Built-In Library ) :تحتوي اللغه على كثير من الدوال الجاهزه للاستخدام , ومسهله بطريقه كبيره , بحيث يمكن من سطرين برمجيين او ثلاث من انشاء صوره من غير استخدام اي برنامج تحرير رسومي
+القيمة :اللغه مجانيه ولا يوجد اي مبلغ تقوم بدفعه لتحميلها ويمكنك تحميل اللغه من موقعها الرسمي http://www.php.net
+التعلم :تعلم اللغه سهل وهو مبني على لغة PERL و C و JAVA فإذا انت تعرف احدها , فتأكد انك سوف تختصر كثير من الوقت للتعلم
-الفرق بين PHP و HTML :
قبل :لغة HTML
أذكركم أن صفحة HTML يكون لها الأمتداد .HTML ,لن أدخل في التفاصيل أكثر سأترك لكم الصورة تبين لكم كيف يتم التعامل مع صفحة HTML:
http://i215.photobucket.com/albums/cc261/yassinenho/html.jpg
كما ترون هناك مرحلتين :
-المستعرض (انه أنت,الزائر) يطلب استعراض صفحة ويب من الخادم بطريقة جد مؤدبة:"من فضلك أرسل لي صفحة course.html"
-الخادم يرد عليه بارسال الصفحة المطلوبة :course.html
من هنا نستنتج أن المستعرض يطلب صفحة ويب من موقع معين :فأنه يطلبها من الخادم الذي يقوم بتدبير واستضافة هدا الموقع.عندئذ الخادم يرسل للمستعرض أو الزائر الصفحة المطلوبة التي تظهر على الفور أمام أعينه
وهذا ما يحدث في كل مرة عندما تطلبون صفحة HTML.ولكن ماهو الفرق عند طلب صفحة PHP ؟
الآن :لغة PHP
هناك مرحلة جد مهمة ستنضاف الى المرحلتين السابقتين :صفحة PHP تعالج عند الخادم قبل ما ترسل الى المستعرض :
http://i215.photobucket.com/albums/cc261/yassinenho/php.jpg
نحلل جميع المراحل من جديد :
-المستعرض يطلب من جديد استعراض صفحة ويب من الخادم بطريقة جد مؤدبة:"من فضلك أرسل لي صفحة course.php"
-هنا تبدأ المرحلة الجد حساسة والمهمة وهي التي تحدث الفرق في التعامل مع صفحات الويب: الخادم لا يرسل على الفور الصفحة المطلوبة.أولا يقوم بمعالجتها وتنفيذ ما تحتويه من أوامر. طبعا لأن المستعرض غير قادر على قراءة صفحة PHP (الخادم وحده القادر على ذلك)
المستعرض قادر فقط على قراءة صفحات HTML وما يقوم به الخادم هو تحويل صفحة PHP الى صفحة HTML حتى يستطيع المستعرض قراءتها
-وأخيرا عند معالجة صفحة PHP والتي لا تحتوي الا على أكواد HTML رغم أن امتدادها .php (يمكنك التحقق من ذلك بأظهار كود صفحة الويب التي أمامك ) عندها يقوم الخادم بارسال الصفحة الى المستعرض:تفضل هذا ما طلبته
سنتوقف قليلا عند المرحلة المهمة :مرحلة المعالجة,سأستبق الأحداث وأضع لكم كود PHP :
<code style="white-space: nowrap;"> <!-- php buffer start --><code> echo("أنت الزائر رقم :" . $nbre_visiteurs); ?> </code><!-- php buffer end --></code>
حواسيب المستعرضين لا تعرف ترجمة أو قراءة هذا الكود .وحده الخادم من يتقن ذلك , وبالتالي الخادم يقوم بترجمة هذا الكود الى لغة HTML وارساله للمستعرض.
لكن ما مدى أهمية كود PHP ؟
أنه يحتوي على تعابير تطلب من الخادم تنفيذ مجموعة من الأوامر:طبع تاريخ اليوم,عدد الزوار المتواجدون حاليا ... بالموجز :PHP يصدر أوامر وجب تنفيذها من طرف الخادم
هذا النوع من الخدمات كان مستحيلا بلغة HTML.بوصول لغة PHP أصبح كل شيء ممكنا.وسنرى معا مايمكن صناعته بلغة PHP
لاتنسوا أن بصفحة PHP يوجد كذلك أكواد HTML لكن الخادم لايبديهم أي اهتمام.عندما يصادف كود PHP يقوم بقراءته ثم معالجته وتحويله الى كود HTML قابل للقراءة عند المستعرض.
في آخر المطاف الصفحة المعالجة لا تحوي الا أكواد HTML:يمكن للمستعرض أن يقرأها
وماهو مميز هنا هو كون أن صفحة PHP المعالجة تكون موجهة لمستعرض واحد لا غير!!!
وعند طلب الصفحة من مستعرض آخر يقوم الخادم بمعالجتها من جديد.
يعني أن صفحة PHP تعالج كل مرة على حدة عند طلبها وهذا ما يميزها عن صفحة HTML :صفحة HTML المطلوبة هي نفسها لايتغير فيها شيء ,الخادم يرسل فقط الملف HTML ولايحدث عليه أي تغييرات .لكن في PHP الخادم يقدم كل مرة للمستعرض صفحة PHP مميزة
الى هنا نصل الى نهاية الدرس الأول من دورتنا أتمنى أن يروقكم ولا تترددوا بطرح أي سؤال اذا كان هناك شيء غير مفهوم
اذا قمت بأي خطأ او كان هناك خطأ في معلوماتي الرجاء اعلامي بذلك , فلا تنسى انه جل من لا يسهو . ( ان اصبت من الله وان اخطأت فمن نفسي او الشيطان )
والآن أترككم مع أسئلة حول الدرس حاولوا أن تجيبوا عليها دون الرجوع الى نص الدرس:
1. ماهو الاسم القديم للغة PHP وماهو الاسم الحالي ؟
2. من هو مخترع هذه اللغه ؟
3. اذكر مظاهر قوة لغة PHP ؟
4. اذكر 4 من قواعد البيانات التي تدعمها لغة PHP ؟
5. اشرح المرحلة المهمة أو المتقدمة : المعالجة
الى اللقاء في الدرس القادم ان شاء الله
samer kouta
04-02-2009, 03:23 AM
على بركة الله نبدأ الدرس الثاني :
الفصل الأول :بدائيات لغة PHP
*ما تحتاجه لغة PHP من برامج:EasyPHP
-لماذا أنا محتاج اليه ؟
كما سبق وتم شرحه فالخادم هو الوحيد القادر على معالجة صفحات PHP فالمستعرض (أقصد أنتم :الزوار لمواقع PHP) غير قادر على معالجة صفحات PHP
لكن كيف سيمكننا معرفة هل الأكواد التي سنقوم بكتابتها على حواسبنا شغالة أم لا ؟ نعم سؤال في محله
حواسبكم لا تعرف معالجة صفحات PHP !
يجب الأستعانة بوسيلة ما لتعلم صياغة صفحات PHP على جهازكم ومن تم انشاء موقعكم.
الحل :EasyPHP نعم فهو يلعب دور الخادمويحوي مجموعة من البرامج التي تساعد في معالجة صفحات PHP
الموقع الرسمي ل EasyPHP :
www.easyphp.org
لمعلوماتكم البرامج التي يقوم EasyPHP بتنصيبها على جهازكم :
* Apache :هو البرنامج الذي يستخدمه الخوادم ,يسمح للخوادم بتوزيع صفحات PHP لكنه لا يعرف معالجة صفحات PHP (لا يعرف الا لغة HTML)
* PHP :انه ك "plugin" ل Apache .يحتاج لApache لأجل القيام بمهمته.وبفضله Apache سيتعرف ويعالجصفحات PHP . وبالمعنى الأصح :
Apache + PHP = un serveur PHP
* MySQL :هو برنامج سيساعدنا كثيرالكن ليس الآن بل لاحقا.لن نتكلم عليه كثيرا بقدر ما أخبركم أنه البرنامجالذي سيساعدنا في تحرير قواعد البيانات
* PHPmyAdmin :هو البرنامج الذي سيقوم بأدارة قواعد البيانات
ليس مهما الى حد الآن فهم ماتقوم به هذه البرامج بالتدقيقهناك أمر وجب عليكم تذكره هو أنه يلزمكم تنزيل برنامج EasyPHP لأننا سنحتاج اليه لاحقا : من هنا
أنه برنامج يعمل في الخفاءعند تشغيله لايلزمك الدخول اليه كل مرة!
دعونا الآن نرى كيف يتم تنصيبه .
*تنصيب EasyPHP :
فكوا الضغط وقوموا بتنصيب البرنامج EasyPHP 1.8 كأي تنصيب لبرنامج آخر
ضعوا علامة صح على الأختيار :"Lancer EasyPHP"
يمكنكم كذلك تشغيل البرنامج عن طريق القائمة :Start
ولكن كيف يمكن معرفة EasyPHP هل تم تشغيلم أم لا (كونه يعمل متخفي) !
لكي تعلموا هل EasyPHP مشتغل أم لا ,تأكدوا من وجود أيقونته بالمقربة من الساعة :
http://i215.photobucket.com/albums/cc261/yassinenho/easyphp.jpg
اذا كان كل شيء تمام ستكون الأيقونة ترمش (بترفرف) واذا حطيتوا الماوس على الأيقونة يمكنكم أن تقرؤا "EasyPHP Démarré"
هنيئا ! تم تنصيب وتشغيل EasyPHP بنجاح
*EasyPHP Configuration :
المرحلة الأخيرة :يجب اعداد البرنامج. أطمئنكم أنه اعداد سهل وبسيط
عند الضغط بالزر الأيمن على أيقونة البرنامج ستظهر لك القائمة التالية
http://i215.photobucket.com/albums/cc261/yassinenho/administration.jpg
قوموا بأختيار :Administration التي ستخول لنا اعداد البرنامج
ستظهر لكم صفحة ويبنعم صفحة ويب لكنها توجد في قرصكم الصلب وليس في الأنترنت ! كما ستلاحظونعنوان الصفحة هو :"http://127.0.0.1/home" يعني أنكم متواجدون على حاسبكموالصفحة التي من المفروض أن تظهر عندكم
http://i215.photobucket.com/albums/cc261/yassinenho/administration1.jpg
كتبت لكم الرقمين (1) و (2) حتى أبين لكم مدى أهمية هدين الجزئين وهما :
-1. Apache > Alias :وهو الجزء الذي يمكننا من اعداد EasyPHP.وهو الذييظهر لنا المواقع المتواجودة على حاسوبنا حتي يتمكن EasyPHP من قراءتها
-2. PhpMyAdmin > Gestion BDD :من هنا يمكنكم تحرير قواعد بياناتكم, سنرى ذلك في الفصل التالي.
يوجد رابط "ajouter" مباشرة تحت :"Alias" , قوموا بالنقر عليه بعد ذلك ستظهر لكم صفحة تطلب منكم بعض المعلومات
خلال هذه الدورة سنقوموا بمجموعة من المحاولات لأنشاء صفحات PHP وبالتاليمن المستحسن انشاء ملف "Tests PHP" في Mes D ocumentss على سبيل المثاللجمع جميع الملفات التي سننشئها :
http://i215.photobucket.com/albums/cc261/yassinenho/parametres.jpg
-1) :يمثل اسم موقعكم وفي هذه الحالة اسمه :TestsPHP
(2 :أنه مسار تواجد ملفات موقعكم وفي هذه الحالة:C:\Mes D ocuments\TestsPHP
(3 :عندما تصادفون مثل هذه الكلمات بالأنجليزية افعلوا مثلي لاتقربوها
(4 :عند ملء هذه الخانات قوموا بالضغط على هذا الزر Ok
بعد ذلك اضغطوا بالزر الأيمن على أيقونة البرنامج واختاروا :"Redémarrer" حتى يتم اعادة تحديث خدمات البرنامج
اذا تم تحيث البرنامج بنجاح ستظهر لكم صفحة البداية وبجانب "alias" سيظهر لكم موقعكم "Tests PHP"
الى هنا نصل الى نهاية الدرس الثاني من دورتنا أتمنى أن يروقكم ولا تترددوا بطرح أي سؤال اذا كان هناك شيء غير مفهوم
الى اللقاء في الدرس القادم ان شاء الله
الشامي
04-02-2009, 04:15 AM
السلام عليكم...
الله يبارك فيك خيي سامر على المجهود الطيب...
عندي طلب ممكن نجمع كل شي بيخص هالموضوع بموضوع واحد منشان ما نضيع :)؟؟؟...
أخوكم:rolleyes:
samer kouta
05-02-2009, 04:56 AM
آه والله أتمنى لكن كيف ؟
hadid
05-02-2009, 09:05 PM
الموضوع بمحلو كنت حابب آخد هالفكرة عن اللغة بها الوقت
سلمن
سلام
samer kouta
06-02-2009, 10:59 PM
على بركة الله نبدأ الدرس الثالث :
http://www.man-u.net/vb3/images/fa9l.gif
الفصل الأول :بدائيات لغة PHP
: http://www.samerkouta.fr/test/3.zip (http://www.samerkouta.fr/test/4.zip) الملف word
http://www.man-u.net/vb3/images/fa9l.gif
*الخطوات الأولى :
انطلاقا من هذا الدرس سنقوم بكتابة الأكواد فهل انتم مستعدون ؟
يوجد كثير من البرامج لكتابة اكواد PHP ,واحد موجود عندكم في حواسيبكم :Bloc-Notes أو NotePad وانت كمبتدئ تحتاج الى أن تكتب الكود البرمجي بإستخدام برنامج يساعدك على تتبع الاخطاء وترتيب الكود البرمجي وتلوينه وهذا يساعد كثيرا في البرمجة, لدا اخترت لكم البرنامج Notepad++ حيث يساعد كثير في كتابة الأكواد بطريقة جد عملية
واليكم طريقة كتابة وحفظ ملف PHP على هذا البرنامج:
*تقوم باختيار لغة البرمجة PHP :
Notepad ++ :
http://www.01net.com/telecharger/windows/Internet/editeur_de_site/fiches/29119.html
http://i215.photobucket.com/albums/cc261/yassinenho/notpad1.jpg
*تقوم بكتابة الكود الذي ترغب فيه :
http://i215.photobucket.com/albums/cc261/yassinenho/notpad2.jpg
*تقوم بحفظ الملف : مثلا : test.php
-وسوم PHP : هناك كثير من وسوم الكتابه في لغة PHP , ونعني بوسوم الكتابه المكان الذي يكون يبدأ معه كتابة الكود والمكان الذي ينتهي معه ,كما تعلمون فلغة HTML فهي لغة وسوم أو "tags"
على سبيل المثال :
فهو أحد الوسوم في HTML
أما في لغة PHP فهناك فقط ثلاث طرق لكتابة الوسوم :
-النمط الافتراضي : كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> // Code PHP here ?></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
-النمط القصير : كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> // Code PHP here?></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
-نمط S cript :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> <S cript LANGUAGE="php" > </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>//Code PHP here </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code><!--</font--></code></code>
<code style="white-space: nowrap;"><code>S cript > </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
لنقم بتطبيق هذه الوسوم على برنامجنا الاول , لنرى كيف تعمل , ولكي تعرف ماهي افضل طريقة في كتابة الوسوم
النمط الافتراضي :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> print ("the first line with PHP "); </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
النمط القصير :
كود PHP:
("<code style="white-space: nowrap;"><!-- php buffer start --><code> print ("the first line with PHP </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
نمط S cript :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> <S cript LANGUAGE="php" > </code></code>
<code style="white-space: nowrap;"><code> print ("the first line with PHP "); </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->S cript > </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
-كتابة نص :
اعتقد انك قمت بالتركيز في الشرح بالاعلى وقلت لنفسك ( انا اعرف كيف اطبع للمتصفح ) , نعم انت تعرف , نفسها كلمة print() هي للطباعة في المتصفح , ولكن ما هي print() , هذه الداله داخلية في PHP اي موجودة في المترجم وتستطيع استخدامها , نقوم في معظم الحالات بطباعة مخرجات الى المتصفح , قد تتسائل ماهو معنى كلمة دالة ؟ اذن دالة تعني ( امر يقوم بفعل شي معرف مسبقا بداخله ) , ودائما المدخلات الى الدوال تكون بين الاقواس كما تشاهد في أول برنامج لك , في حالتنا بالأعلى قمنا بطباعة نص اليس ذلك صحيحا ؟ اذن يجب ان نضع النص بين علامتي التنصيص " نص معين " والا سوف يكون هناك خطأ . ولا تنسى ان تقوم بإنهاء كل سطر في كودك البرمجي بعلامة ; والا سوف يكون هناك خطأ , لماذا نحتاج هذه العلامة ؟ لكي نقول للمترجم ان هنا ينتهي طلب هذا الامر وقم بتنفيذه.
يمكننا كذلك استعمال دالة أخرى لطباعة نص وكذلك وسوم HTML على المتصفح :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> echo "Celle-ci a été écrite uniquement en PHP."; ?></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
انها الدالة :echo وتستعمل أيضا لطباعة علامات أخرى داخل نص كعلامة " :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> echo "Celle-ci a été écrite \"uniquement\" en PHP."; ?></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
-اضافة تعليقات :
عندما تكتب كود برمجي كبير , أو أسطر برمجية كثيرة سوف تكون لك سهلة في البدايه وسوف تعرف عمل هذا الكود , لكن اترك العمل على الكود لمدة سنة , وارجع له مرة ثانية لتقوم ببعض التعديلات وبعض الاصلاحات ؟ هل تعتقد انك سوف تتذكر جميع الاكواد ؟ , اذن هذه هي التعليقات , تعبير او شرح بسيط عن الاكواد التي قمت بعملها وبمعنى اخر (( هي اسطر كتابيه تقوم بشرح اكواد معنية ولا يقوم المترجم بترجمتها )) لنأخذ بعض انواع التعليقات وبعض الامثلة على التعليقات وكيف يتم استعمالها :
سطر واحد :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> this is a comment </code></code>//
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
او
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> this is a comment </code></code>#
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
عدة اسطر :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> /* </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> this a comment </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> i am learning php </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> i love it </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> */ </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
http://www.man-u.net/vb3/images/fa9l.gif
الى هنا نصل الى نهاية الدرس الثالث من دورتنا أتمنى أن يروقكم ولا تترددوا بطرح أي سؤال اذا كان هناك شيء غير مفهوم
: http://www.samerkouta.fr/test/3.zip (http://www.samerkouta.fr/test/4.zip) الملف word
الى اللقاء في الدرس القادم ان شاء الله
samer kouta
06-02-2009, 11:09 PM
على بركة الله نبدأ الدرس الرابع
http://www.man-u.net/vb3/images/fa9l.gif
الفصل الأول :بدائيات لغة PHP
الملف word
: http://www.samerkouta.fr/test/4.zip
http://www.man-u.net/vb3/images/fa9l.gif
*المتغيرات :
-تعريف متغير :
ما معنى متغير ؟ المتغير هو عبارة عن مكان او خانة نضع فيها قيمة معينة , وهده القيمة عبارة عن بيانات . اذن كيف نقوم بتعريف متغير ؟ وكيف نحدد قيم المتغير ؟! في لغة PHP نقوم بتعريف متغير عن طريق الرمز $ فمثلا لو قلنا اننا نريد ان نعرف متغيرا اسمه ( name ) ويحتوي على القيمه ( محمود ) فسوف نقوم بالتالي :
$name = "محمود";
لكن يجب الانتباه لأسماء المتغيرات في لغة PHP ,فهناك اسماء واحرف غير مسموحه لتعريف المتغيرات, لنقوم بتسهيل الامر سنذكر المسموح منها وهو ( احرف ) و ( ارقام ) و ( _ ) فقط.
مثال على الاحرف : ( $name ) , مثال على الارقام : ( $223 ) , مثال على _ : ( $_name ) , ولكن يفضل ان تكون الاسماء معبرة لكي يسهل عليك كتابة البرنامج ويسهل على الغير فهم محتواه , فلو اردت ان تعرف متغير يحوي البريد الالكتروني فسوف يكون كالتالي ( $email ) او ( $user_email ) وليس من المنطقي ان يكون ( $2235 ) او ( $mobile ) على سبيل المثال. وتذكر ان يمكنك استخدام اي عدد من الحروف التي تريد , فهي ليست محددة
-كيفية تغيير قيمته وطبعه :
لاعطاء قيمة لمتغير ما وجب احترام نوعه :
-نص :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $pseudo_visiteur = "yassine.na"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
-عدد :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $nombre_de_freres = 3;
?> </code><!-- php buffer end --> </code>
-Boolean :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $je_suis_un_zero = true; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>$je_suis_bon_en_php = false; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
-عدد عشري Double :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $moyen = 7.5; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
هناك نوعين آخرين سنقوم بدراستهما لاحقا وهما : ( مصفوفه = array ) , ( كائن = object )
*طباعة متغير :عندما نريد طباعة نص يجب ان نقوم بوضعه بين علامتي التنصيص " " او ' ' اي واحد منهما تقوم بإختياره , ولكن اذا بدأت بواحد منهم يجب ان ينتهي النص بنفسه فلا يصح ان نقول ( "mohammad' ) ولكن الصحيح ( "mohammad" ) او ( 'mohammad' )
معلومة : تسمى لغة PHP اللغه المسامحة ولذلك انك عند وضع القيمه داخل المتغير لا تحتاج ان تقوم بتحديد النوع , فإن المترجم يقوم بعرفة النوع من تلقاء نفسه , ماعليك فعله فقط ان تقوم بوضع علامة $ قبل اسم المتغير
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $pseudo_visiteur = "yassine.na"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo </code></code>
<code style="white-space: nowrap;"><code>"$pseudo_visiteur"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
لتوضيح الصورة قوموا بكتابة عدة متغيرات وبقيم مختلفة وقوموا بطبعها كما فعلت
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $pseudo_visiteur = "yassine.na";
echo "Welcome $pseudo_visiteur !";
?> </code><!-- php buffer end --> </code>
كما لاحظتم في هذا المثال الأخير فيمكننا أن ندمج نص ومتغير داخل الدالة echo بشرط أن يسبق اسم المتغير علامة $
ولمعرفة نوع قيمة موجودة في متغير , ماذا يجب عليك ان تفعل , أمر بسيط جدا وهو ان تقوم بإستخدام الدالة gettype($var); وسوف تقوم هذه الدالة بطباعة نوع المتغير الموجود لديك , لنأخذ امثلة على ذلك , افتح محرر الاكواد وقم بكتابة التالي :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code>
</code></code>
<code style="white-space: nowrap;"><code> $name ='yassine'; </code></code>
<code style="white-space: nowrap;"><code>$number = 10 ; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo gettype($name); </code></code>
<code style="white-space: nowrap;"><code> echo "</code></code>
<code style="white-space: nowrap;"><code>"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo </code></code>
<code style="white-space: nowrap;"><code>gettype($number); </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo "</code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>
</code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
وسوف تكون النتيجة كما يلي :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> string </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> integer </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
ولتغيير قيمة متغير من نوع الى اخر , من integer الى string فمالذي نفعله ؟ نقوم بإستخدام الدالة settype($var , new type ) لكي تقوم بالعمل المطلوب :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code>
</code></code>
<code style="white-space: nowrap;"><code> $number = 10 ; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo </code></code>
<code style="white-space: nowrap;"><code>gettype($number); </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>
</code></code>
<code style="white-space: nowrap;"><code>settype($number,string); //غيرنا النوع </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>echo "</code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo </code></code>
<code style="white-space: nowrap;"><code>gettype($number); </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> echo "</code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>"; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code>
</code></code>
<code style="white-space: nowrap;"><code>?> </code><!-- php buffer end --> </code>
وسوف تكون النتيجة كما يلي :
كود PHP:
<code style="white-space: nowrap;"><!-- php buffer start --><code> integer </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> string </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
-حسابات على المتغيرات:
لدينا ثلاث انواع من المعاملات في لغة PHP وهي المعاملات الحسابية , معاملات المقارنة , المعاملات المنطقية
*المعاملات الحسابية :هي العمليات الحسابية الأعتيادية
كود PHP:
<code style="white-space: nowrap;"><!-- php buffer start --><code> $nombre = 2 + 4; // تأخد القيمة 6 $nombre
$nombre = 5 - 1; // تأخد القيمة 4 $nombre
$nombre = 3 * 5; // تأخد القيمة 15 $nombre
$nombre = 10 / 2; // تأخد القيمة 5 $nombre
// نضيف شيئا من الصعوبات
$nombre = 3 * 5 + 1; // تأخد القيمة 16 $nombre
$nombre = (1 + 2) * 2; // تأخد القيمة 6 $nombre
?> </code><!-- php buffer end --> </code>
مثال آخر :
كود PHP:
<code style="white-space: nowrap;"><!-- php buffer start --><code> $nombre = 10;
$resultat = ($nombre + 5) * $nombre; // تأخد القيمة 150 $resultat
?> </code><!-- php buffer end --> </code>
* معاملات المقارنة :
كود PHP:
<code style="white-space: nowrap;"><!-- php buffer start --><code> يساوي := = </code></code>
<code style="white-space: nowrap;"><code>لا يساوي : != </code></code>
<code style="white-space: nowrap;"><code>يساوي ومن نفس النوع : = = = </code></code>
<code style="white-space: nowrap;"><code>اكبر من : > </code></code>
<code style="white-space: nowrap;"><code>اكبر من ويساوي : >= </code></code>
<code style="white-space: nowrap;"><code>اصغر من : < </code></code>
<code style="white-space: nowrap;"><code>اصغر من ويساوي : <= </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
*المعاملات المنطقية :
-أو : || ==> أحد الطرفين صحيح
-أو : OR ==> أحد الطرفين صحيح
-و : && ==> كل الطرفين صحيحة
-و : AND ==> كل الطرفين صحيحة
-xor : xor ==> أحد الطرفين صحيح وليس الاثنان
-لا : ! ==> الطرف ليس صحيح
-ارسال المتغيرات من صفحة لأخرى :
من أحد مميزات لغة ال PHP تحويل المتغيرات من صفحة لأخرى وبطرق متعددة
نقطة مهمة :عند كل معالجة لصفحة الPHP أو عند الأنتقال من صفحة لأخرى يتم حذف والغاء جميع المتغيرات فما الحل للحفاظ على قيم هذه المتغيرات ؟
*عن طريق رابط الصفحة :أكيد أنكم تصادفتم مع هذا النوع من نقل المتغيرات.لم تتسألوا يوما لماذا بعض الروابط تكون طويلة ؟
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> http://www.monsite.com/infos.php?jour=27&mois=07&annee=2003&titre=Informations </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
أو كهذا :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> http://www.bramjnet.com/vb3/newreply.php?do=postreply&t=294015 </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
انها هنا تخزن وتمرر المتغيرات فترسل من صفحة لأخرى
لكن كيف يتم ذلك ؟
يتم عن طريق ال HTML وبالضبط عن طريق الروابط وباستعمال الوسوم
مثال :
Cliquez ici pour accéder aux infos ! (http://www.monsite.com/infos.php)
ونضيف على الرابط علامة (?) متبوعة باسم المتغير وعلامة (=) ثم قيمة المتغير
فيصبح الرابط على الشكل التالي :http://www.monsite.com/infos.php?jour=27
هكذا سيصبح لدينا متغير ذو قيمة 27 لكنه مختلف شيئا ما عن ماعهدناه على المتغيرات في الأعلى وهو كود PHP:
<code style="white-space: nowrap;"><code>$_GET['jour'] </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
وادا أردتم اضافة متغيرات أخرى وجب عليكم تفريقها بعلامة (&) أو هدا التعبير & وهذا الأخير يعتبر أكثر عملي لأن بعض المتصفحات لاتترجم العلامة (&) وبالتالي يظهر خطأ
مثال :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> http://www.monsite.com/infos.php?jour=27&mois=07&annee=2003
</code><!-- php buffer end --> </code>
جميع تعابير :& سيتم تحويلها لعلامة(&) عن طريق المتصفح
وبدلك ستنشأ ثلاث متغيرات :
كود PHP:
<code style="white-space: nowrap;"><code>• $_GET['jour'] = 27; </code></code>
<code style="white-space: nowrap;"><code>• $_GET['mois'] = 07; </code></code>
<code style="white-space: nowrap;"><code>• $_GET['annee'] = 2003; </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
أعرف أنه الى حدود الآن مازال هناك غموض سنقوم بكتابة مثال خاص بنا سنحتاج صفحتين صفحة تحتوى على كود به روابط للصفحة الأخرى وهذه الأخيرة تستقبل المتغيرات وتقوم بطباعتها:
الصفحة الأولى appel.php:
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> <p> </code></code>
<code style="white-space: nowrap;"><code>Note that this page contains only HTML. <br /> </code></code>
<code style="white-space: nowrap;"><code>Here 3 links to the page : cible.php , with variables and the differents values: </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->p> </code></code>
<code style="white-space: nowrap;"><code> <p> </code></code>
<code style="white-space: nowrap;"><code> <a href="cible.php?nom=Dupont&prenom=Michel">Lien vers cible.php?nom=Dupont&prenom=Michel<!--</font-->a><br /> </code></code>
<code style="white-space: nowrap;"><code> <a href="cible.php?nom=Guichard&prenom=Patrick">Lien vers cible.php?nom=Guichard&prenom=Patrick<!--</font-->a><br /> </code></code>
<code style="white-space: nowrap;"><code> <a href="cible.php?nom=Surret&prenom=Coralie">Lien vers cible.php?nom=Surret&prenom=Coralie<!--</font-->a> </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->p> </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
-الصفحة التانية cible.php :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code></code></code>
Hello!
Your name is echo $_GET['nom']; ?> , and your first name is echo $_GET['prenom']; ?>.
Carry out another test, click here (http://forum.qalamoun.com/appel.php) to return to appel.php
<!-- php buffer end -->
*عن طريق النماذج :لن أطيل عليكم سأضع لكم مثالا,سنحتاج كدلك صفحتين
الصفحة الأولى appel.php:
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> <p> </code></code>
<code style="white-space: nowrap;"><code>Note that this page contains only HTML.<br /> </code></code>
<code style="white-space: nowrap;"><code>Please type your first name: </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->p> </code></code>
<code style="white-space: nowrap;"><code> <form action="cible.php" method="post"> </code></code>
<code style="white-space: nowrap;"><code> <p> </code></code>
<code style="white-space: nowrap;"><code> <input type="text" name="prenom" /> <input type="submit" value="Valider" /> </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->p> </code></code>
<code style="white-space: nowrap;"><code> <!--</font-->form> </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code></code><!-- php buffer end --></code>
الصفحة التانية cible.php :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code></code></code>
Hello!
I know how you are called, hé hé. You are called echo $_POST['prenom']; ?> !
If you want to change first name , click here (http://forum.qalamoun.com/appel.php) to return to appel.php
<!-- php buffer end -->
لأخد قيمة المتغيرات عبر النماذج نستعمل :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $_POST['xxxx'] </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
لأخد قيمة المتغيرات عبر الروابط نستعمل :
كود PHP:
<code style="white-space: nowrap;"> <!-- php buffer start --><code> $_GET['xxxx'] </code></code>
<code style="white-space: nowrap;"><code></code></code>
<code style="white-space: nowrap;"><code> </code><!-- php buffer end --> </code>
هناك طريقتين أخرتين أكثر احترافية سنتطرق لهما لاحقا
http://www.man-u.net/vb3/images/fa9l.gif
الى هنا نصل الى نهاية الدرس الرابع من دورتنا أتمنى أن يروقكم ولا تترددوا بطرح أي سؤال اذا كان هناك شيء غير مفهوم
الملف word
: http://www.samerkouta.fr/test/4.zip
الى اللقاء في الدرس القادم ان شاء الله
mahamed84
19-02-2009, 04:29 AM
والله مشكور ياخيي على هلموضوع والمعلومات والدروس الروعة بالفعل جزاك الله كل خير
Powered by vBulletin™ Version 4.0.3 Copyright © 2010 vBulletin Solutions, TranZ by Almuhajir