برمج بنفسك …. عداد زوار (1)

Spread the love
 برمج بنفسك …. عداد زوار (1)  أضيف في: 1-5-1428هـ
[CENTER]
السلام عليكم


هذه سلسلة من الدروس بعنوان “برمج بنفسك” سأبدؤها إن شاء الله ببرمجة عداد زوار بمواصفات بسيطة ثم سيتم تطوير الكود تدريجيا ، وبعد الانتهاء من عداد الزوار سنبدأ في دفتر زوار …. وصولا إلى برمجة منتدى.


الدرس:

فكرة البرنامج:
* سيكون لدينا ملف نصي counter.txt سنخزن فيه قيمة العداد
* صفحة counter.php سنقوم من خلالها بقراءة قيمة الملف النصي counter.txt ثم نقوم بطباعة هذه القيمة ثم سنقوم بزيادة القيمة +1 ثم نعود ونخزنها في الملف counter.txt …. بسيطة صح

خطوا تالعمل :
– أولا :
قم بإنشاء مجلد مستقل للبرنامج وليكن اسمه counter
– ثانيا :
قم بإنشاء ملف نصي وسمه counter.txt
– ثالثا :
قم بانشاء ملف counter.php ثم قم بفتحه كي نبدأ البرمجة
—————————————————————–
الآن نحن بداخل ملف counter.php قم بنسخ الكود الآتي ثم سنقوم بشرحه:

PHP CODE:
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010

<?
$fp=fopen($filename,"r");
$result=fread($fp,filesize($filename));
fclose($fp);
$fp=fopen($filename,"w");
$result++;
fwrite($fp,"$result");
fclose($fp);
echo $result;
?>


السطر الأول:

PHP CODE:
0001
0002

<?php $file="counter.txt";

?>

قمنا بإعطاء المتغير $file اسم الملف counter.txt وهو الملف الذي سنخزن فيه قيم العداد
ونستطيع هنا ذكر مسار هذا الملف في حال لم يكن في نفس المجلد الموجود فيه counter.php
وسنشاهد هذه الحالة في مثال مقبل إن شاء الله .

السطر الثاني:

PHP CODE:
0001
0002

<?php $fstream=fopen($file,"r");

?>

* قمنا باستخدام الدالة fopen والتي تقوم بمحاولة فتح الملف $file ، في حالة النجاح يتم فتح مجرى اتصال
مع الملف Stream تخزن قيمته في المتغير $fstream وفي حال حدوث خطأ معين يتم إرجاع هذا الخطأ
وسنشاهد امثلة على الأخطاء التي قد تحدث .
* وكما تلاحظ قمنا باعطاء الدالة fopen شيئين : الاول : اسم الملف $file والثاني : r وهي اختصار ل read
وتعني قراءة حيث أخبرنا الدالة fopen أن تقوم بفتح الملف $file بهدف القراءة
(هناك عدة حالات سنتعرف عليها لاحقا)

السطر الثالث:

PHP CODE:
0001
0002

<?php $counter=fread($fstream,filesize($file));

?>


* استخدمنا هنا الدالة fread والتي تقوم بقراءة الملف $file ولكن هذه الدالة لا تتعامل مباشرة مع الملف $file بل مع مجرى الاتصال
الذي قامت الدالة fopen بفتحه .
* تأخذ الدالة fread شيئين الأول : $fstream وهو مجرى الاتصال الثاني : الطول الذي ستقرؤه وهنا قمنا بإخبارها بأننا نود قراءة كامل الملف $file
عن طريق filesize حيث ستقوم بقراءة جميع محتويات الملف .
* ستقوم هذه الدالة بإرجاع القيم الموجودة داخل الملف $file .
* قمنا بإعطاء القيمة الموجودة في الملف $file للمتغير $counter .

السطر الرابع:

PHP CODE:
0001
0002

<?php echo ++$counter;

?>


قمنا هنا بزيادة قيمة المتغير $counter – والذي أخذنا قيمته من محتويات الملف $file – بواحد حيث إن ++ تساوي:

PHP CODE:
0001
0002

<?php $counter=$counter+1;

?>


وكما تلاحظ فقد وضعنا ++ قبل اسم المتغير بعنى زد على المتغير 1 ثم قم بطباعته ولو كانت ++ بعد المتغير سيطبع قيمة المتغير ثم سيزيد عليه واحد

السطر الخامس:

PHP CODE:
0001
0002

<?php fclose($fstream);

?>


قمنا باستخدام الدالة fclose حيث تقوم بإغلاق مجرى الاتصال مع الملف $file

إلى هنا قمنا بقراءة محتويات الملف وزيادة واحد عليها ثم قمنا بطباعتها … الخطوة القادمة هي تخزين القيمة الجديدة في الملف .

السطر السادس:

PHP CODE:
0001
0002

<?php $fstream=fopen($file,"w");

?>

نفس شرح السطر الثاني اللهم قمنا بفتح الملف بغرض الكتابة حيث استخدمنا w بدلا من r

السطر السابع:

PHP CODE:
0001
0002

<?php fwrite($fstream,$counter);

?>


هنا قمنا باستخدام الدالة fwrite والتي تقوم بالكتابة في الملف حيث اعطيناها مجرى التصال $fstream والقيمة التي ننوي تخزينها وهي $counter

السطر الثامن والأخير:

PHP CODE:
0001
0002

<?php fclose($fstream);

?>


قمنا بإغلاق مجرى التصال مع الملف.


نهاية الدرس

ملاحظة تم نشر هذا الدرس في منتديات سوالف ومنتدى برايس العربي لكنني سأقوم بإكمال سلسلة الدروس هنا في الموسوعة

[/CENTER]
الكاتب: عاشق برايس

الكاتب geek4arab

geek4arab

مواضيع متعلقة

التعليقات مغلقة