تقرير حول سلسلة كتب احتراف PHP و MySQL الجزء الثاني



هذا هو الجزء الثاني من سلسلة كتب احتراف  برمجة الويب باستخدام PHP و MySQL و هذا الجزء من تأليف موقع قرية بي اتش بي  جزاهم الله خيرا وهو يتعرض لبرمجة بي اتش بي PHP وماي سيكول MySQL وفي نهايتة تجد مثالا عن اسكربتات احدهم دفتر زوار والاخر دليل مواقع و ملحق عن تركيب بي اتش بي و السرفر المحلي وجزء يغطي دوال قواعد البيانات و الجلسات والكوكيز و التعامل مع الملفات والمجلدات


مقدمه للغة PHP 



خصائص  لغة php
السهولة
السرعة
المزايا
التوافقية
الحماية
قابلية التوسع
تاريخ PHP
بنية ملفات PHP
كتابة ملفات PHP
لنكتب سكربتاً بسيطاً (فاتح شهية) :

بروتوكولات الأنترنت


بروتوكول Tcp/Ip
بروتوكول الـ HTTP
Http Request
1- The Request Line
2- HTTP Header
3- The HTTP Body :
Http Response
1- the Response Line
2 - http header
3 - Http Body
أين سكربت الـPHP من ذلك كله ؟
مفهوم الـparsing و الـExecution :
 
التعليقات

المتغيرات

ماهي المتغيرات ؟
علامات التنصيص
انواع للبيانات
strings (حروف)
Integer (ارقام)
Double (ارقام ذات فواصل )
array
objects
Unknown
البيانات الحرفيه
الارقام
العمليات الحسابيه
متغيرات النظام
الثوابت
معرفه وتحويل انواع البيانات
الدالة isset
الدالة unset
الداله empty
داوال الوقت التاريخ 
النماذج


فائدة النماذج
ماذا يعمل العميل في النماذج ؟
خصائص النماذج
ACTION 
METHOD 
GET
URL Encoding
POST
أيهما تستخدم GET  أم POST ؟
أدوات التحكم في النماذج :
الوسم INPUT
تطبيقات عمليه
مربعات النصوص (TEXT Box) 
نوعي  الازرار  SUBMIT وRESET  
مربعات النصوص الكبيره (text area)
مربعات الاختيار (Check Box)
تطبيق عملي (1) :
تطبيق عملي (2) : 
تطبيق عملي (3)
ازرار الراديو(RADIO BUTTONS)
القوائم (Lists Or drop down menus)
الاداة الخفيه (والمعلومات السريه!) (hidden control)
استخدام  حقل كلمات السر (Password fields)
ارسال البريد الالكتروني بواسطه الـphp :
برامج عمليه
برنامج او سكربت ارسال بطاقات بسيط

الأوامر الشرطية

القيم المنطقية والدوال الشرطية
العبارة IF
مقدمه الى القيم المنطقيه  (Boolean Values)
المعاملات المنطقية
المعاملات : < و >
معاملات المساواة : == و ===
المعاملات :  =! و <>
المعاملات المنطقيه (AND,OR,NOT)
المعامل (AND) ونظيره( && )
المعامل (OR) ونظيره ( || )
المعامل NOT ونظيره ( ! )
استخدام المعاملات <= و >=
تجميع المعاملات
تعدد الشروط ( else if و else )
تعشيش العبارات الشرطية
العبارة Switch
التخلص من وسوم الـ html

التكرارت والمصفوفات


التكرارات
التكرار while  
التكرار do - while  
التكرار FOR
المصفوفات
تعريف المصفوفات بشكل بسيط
تعريف المصفوفات بطريقة أخري
قراءه المصفوفات واستخراج القيم
إخراج القيم من قائمة على شكل مصفوفة
صناعة القائمة عن طريق المصفوفة
دوال المصفوفات
الدالة key 
الدالة current()
كيف يمكننا تنشيط العناصر الاخري للمصفوفه
الدالتين next()  و prev
الدالة List و Each
فرز المصفوفات
الدالة Sort()
الدالة Arsort()
الدالة Rsort() و arsort
الدالة ksort
دوال المصفوفات الإضافيه
array_push() و array_pop()
Implode  و  Explode
الدالة Implode
الدالة explode
HTTP_GET_VARS و HTTP_POST_VARS
مصفوفه متعدده الابعاد
تكرار  foreach
الدالة count

ترتيب الكود البرمجي


Function
تعريف واستدعاء الدوال
Return
الأمر print
اين يتم وضع الداله ؟
تمرير القيم الى الدالة
1 - تمرير القيمه مباشره الى الداله (passing by value) 
2 - تمرير القيمه عن طريق المرجع (passing by reference)
اعداد قيمة افتراضيه للدالة
مدي المتغيرات (variable scope)
المتغيرات المستقره (static variable)
دوال متداخلة
اشتمال الملفات (include files) 
داله تلوين الكود Show_source

تتبع وتصيد ومنع الاخطاء avoiding and handling errors


أنواع الأخطاء 
الأخطاء الإملائية Syntax Error
لكن أكثر الأخطاء الإملائية الشائعة في برامج الـPHP
الأخطاء المنطقية (Logical Errors)
اخطاء التكرارات
عدم ارجاع قيمه من function
الخلط في المعاملات الحسابية والمنطقية
أفكار جيدة لتفادي الأخطاء
Regular Expressions
النمط (pattren)
صناعة فئة حروف [xyz]
تحديد مكان الكلمة
 ملخص ما أخذناه من القواعد
تعبير للتاكد من ايميل
أساليب أخري لتتبع الأخطاء
استخدام عباره echo
فحص كود الـhtml
تجاهل الأخطاء

التعامل مع العميل


استخدام الحقول المخفيه
ارسال بيانات بواسطة query strings 
الكوكيز أو الكعكعات ((cookies
بدايتك مع الكيوكيز
مثال لتخزين وقراءة  كوكيز
بدايتك الى الـsession
اعدادات الـsession في الـPHP
اعداد طريقة  التخزين
إعداد مكان التخزين
الإنشاء التلقائي للـsession
الـSID
طريقتين يستطيع بها الـPHP متابعة الـSID للمستخدم :
1 - عن طريق المتابعة والتخزين بتسلسل في الكوكيز .
2 - عن طريق اتباع رقم المعرف بعنوان الصفحة في الانترنت
متابعة الـsession
كتابة رقم الـSID
مسح متغير من الـsession
قراءة قيم المتغيرات في الـكوكيز الخاصة بالـsession


امثلة

المتغيرات

- العمليات الرياضية

- عمليات Assignment
عوامل الإضافة و الطرح
عمليات المقارنة Comparasion Operators
العمليات المنطقية Logical Operations
عبـاراة الـ if .  واخواتها

- عبـاراة الـ else .
- عبـاراة الـ elseif .
- عبـاراة الـ switch .
- حلقة التكرار while .  واخواتها

- حلقة التكرار for .
- حلقة التكرار do while
الدوال ( Function ) :

الشكل العام – التركيب
- تعريف الدالة
استخدامات الدالة
- إظهار نتيجة الدالة  طباعة الدالة
 مفاهيم عامة عن قواعد البيانات عموما وعن الـ Mysql خصوصاً ، لتكون بداية فهم لقواعد البيانات الهامة لأي لغة برمجة

- الجداول Tables :
الأعمدة Columns
الصفوف Rows
القيم Values
المفاتيح Keys
الاتصال بالـ Mysql ، والتعامل معها
التعامل مع بيانات الجداول
ما هي قواعد البيانات بالضبط

العلاقات
المفتاح الأجنبي
الفهرسة
دوال قواعد البيانات


1- الدالة mysql_connect
2- الدالة mysql_pconnect
3- الدالة mysql_select_db
4- الدالة mysql_db_query
5- الدالة mysql_close
6- الدالة mysql_query
7- الدالة mysql_errno
8- الدالة mysql_error
9 - الدالة mysql_create_db
10- الدالة mysql_drop_db
11- الدالة mysql_list_dbs
12- الدالة mysql_field_seek
13- الدالة mysql_field_name
14- الدالة mysql_field_type
15- الدالة mysql_field_len
16- الدالة mysql_field_flags
17- الدالة mysql_list
18- الدالة mysql_fetch_field
19 - الدالة mysql_fetch_lengths
20 - الدالة mysql_fetch_array
21- الدالة mysql_fetch_object
22- الدالة mysql_fetch_row
23- الدالة mysql_change_user
التاريخ باللغة العربية

دالة التاريخ في البي اتش بي
كتابة البرامج بلغة البي اتش بي
مقدمة للتحكم في المواقع عن طريق الـ Session أو الجلسـات

التعامل مع الملفات والمجلدات


1      فتح وإغلاق الملف .
2      القراءة من الملف والكتابة إليه .
3      مسح وإعادة تسمية الملفات
4      استعراض وتجول في الملف .
5      فتح وإغلاق المجلدات .
6      نسح وإعادة تسميه المجلدات
الدالة fwrite()
الدالة file()
الدالة Fopen
الدالة fclose
الدالة Fread
الدالة Fwrite
الدالة Fgetc
الدالة Feof
الدالة Fgets
الدالة Fputs
الدالة Fpassthru
الدالة Readfile
الوصول العشوائي إلى الملفات
الدالة Fseek
الدالة Ftell
الدالة Rewind
الدالة File_exists
Filesize
الملكية والتراخيص
Posix_getpwind
Posix_getgrgid
الدالة Fileowner
الدالة Filegroup
الدالة Filetype
الدالة Is_dir
الدالة Is_file
الدالة Basename()
الدالة Copy ()
الدالة Rename
الدالة Unlink()
الدالة Opendir
الدالة Closedir()  
الدالة Readdir
الدالة Rewindir
الدالة Chdir
الدالة Rmdir
الدالة Mkdir
الدالة Dirname
خصائص الكائن Dir
handle
Path
Read
Rewind
Closedir
الاسركبت الاول 
كمثال عملي دليل مواقع بسيط جداً جداً يعتمد علي قواعد البيانات بالطبع لا يوجد فيه تقسيمات والسبب لأننا سوف نضطر إلي وضع أو خلق أكثر من جدول (Table) في قواعد البيانات وسوف نضطر إلي وضع علاقات بينهم 
وهذا حالياً يعقد الموضوع  فسأكتفي  الآن بجدول واحد (one table) وسوف اشرح إذا اتسع لدي الوقت الكثير عن (sql) عامة وعن العلاقات (Relationstips) لأنها مثيرة أيضاً جداً

الاسركبت الثاني
كمثال عملي دفتر زوارالسكريبت يتكون من ثلاثة ملفات، الأول view.php لعرض المدخلات في سجل الزوار، والثاني add.php لإضافة مدخل جديد إلى سجل الزوار، والثالث هو config.php ويحتوي على بيانات قاعدة البيانات.
في الملف view.php، يتم جلب البيانات المدخلة من قاعدة البيانات وعرضها واحدة تلو الأخرى في صورة جدول HTML، وأسفل هذا الجدول يوجد نموذج لإضافة تعليق جديد في سجل الزوار.
الملف add.php يقوم بأخذ البيانات المرسلة من النموذج الموجود في الملف view.php، ثم يقوم بمراجعة هذه البيانات والتحقق منها، ثم إضافتها إلى قاعدة البيانات وإعادة المستخدم إلى الملف view.php.
يجب أن نحدد الآن البيانات التي نريد تخزينها في قاعدة البيانات:
- الاسم.
- البريد الإلكتروني.
- الصفحة الشخصية.
- التعليق على الموقع.




تعليقات

المشاركات الشائعة من هذه المدونة

الشاشة الإفتتاحية لإكسل

أوامر الجافا سكريبت JavaScript

مسائل علي الترانزستورات MOSFET