الدكتور نت

السلام عليكم

منذ العام 1999م و نحن نحاول الارتقاء بالمصمم و المطور العربي عبر إضافة دروس و مقالات و دروات لتساعده على إنشاء و تطوير موقعه . لو كنت أحد هؤلاء و أحببت مساعدتنايمكننا أن ندلك على عدد من الأمور التي يمكنك القيام بها لمساعدتنا اضغط هنا و أقرأ أكثر عن الموضوع ..

عداد Counter


بقلم: أم محمد /مواضيع أخرى لنفس المحرر أم محمد

حول الموضوع

وصف الموضوع

عداد للزوار يعتمد على Php و mysql


الأوسمة :
| | | |
في التصنيفات :PHP

حسنا فكرة صناعة عداد بسيطة نوعا ما و انت لا تحتاج إلى برامج خيالية و معقدة لتقوم بذلك يمكنك تصميم برنامجك الخاص .

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

لذلك سنعتمد على نظام الجلسات Session و لن نستخدم السكاكر Cookies لانها تسبب المشاكل مع بعض المتصفحات و يمكن التحايل عليها .

 

تصميم الجدول

سننشأ جدول واحد سيحتوي على خانتين

mycounter

ID : varchar (255)

Count : varchar(25)

وسنضع قيمة أولية ل ID نضع 1 , ل count نضع 0

&lt;?<br />session_start();<br />$con = mysql_connect( &quot;localhost&quot; , &quot;username&quot;,&quot;password&quot;);<br />mysql_select_db(&quot;mydbname&quot;)or die(&quot;خلل لم نتمكن من الاتصال في قاعدة البيانات &quot;);<br />if (!session_is_registered(&quot;was_counted&quot;)){<br />&nbsp;&nbsp;&nbsp; mysql_query(&quot;UPDATE mycounter SET count=(count + 1) WHERE ID=1&quot;);<br />&nbsp;<br />&nbsp;&nbsp;&nbsp; session_register(&quot;was_counted&quot;);<br />}<br />?&gt;<br />

 

لتفصيل الكود السابق

 

</p><p>session_start();</p><p>

 

استخدمنا هذا الاستعلام لنعلم السيرفر أننا  سنبدأ جلسة جديدة Session  و تأكد من وضع الكود هذا في بداية الملف و أن لا يسبقه شئ آخر  و إلا سيظهر لك رسالة خطأ و لن يبدأ

 

<p>$con = mysql_connect( &quot;localhost&quot; , &quot;username&quot;,&quot;password&quot;);<br /><br />mysql_select_db(&quot;mydbname&quot;)or die(&quot;خلل لم نتمكن من الاتصال في قاعدة البيانات &quot;);</p>

 

السطرين السابقين للإتصال بقاعدة البيانات  السطر الأول يحمل

 

</p><p>if (!session_is_registered(&quot;was_counted&quot;)){</p><p>

 

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

</p><p>mysql_query(&quot;UPDATE mycounter SET count=(count + 1) WHERE ID=1&quot;);</p>

استعلام لزيادة شخص في قاعدة البيانات ..

 

<p>session_register(&quot;was_counted&quot;);</p>

و الآ سنسجل المستخدم أو جهاز المستخدم كزائر و بالتالي لن يقوم البرنامج بعده مرة أخرى

 

عرض النتيجة

لعرض عدد الزوار في الموقع يمكنك وضع الكود التالي مع التذكير أن الكود السابق يجب أن يكون في  بداية الصفحة قبل أي شي آخر

 


</p><p>&lt;? <br />&nbsp;&nbsp; $res=mysql_query(&quot;select count from mycounter where ID=1&quot;);<br />&nbsp;&nbsp; $total = mysql_result($res,0,0);<br />&nbsp;&nbsp; echo &quot;عدد الزوار : $total زائر &quot;;<br />?&gt;<br />&nbsp;&nbsp; </p>

 

ننفذ استعلام و نستخرج النتائج منه و نطبعها

 

تقييم الموضوع :
نقطة  واحدةنقطتين3 نقاط4 نقاط5 نقاط
(42 صوت)
Loading ... Loading ...
أعجبك الموضوع .. أضفه في
Del.icio.us     Digg     أرسله إلى  Stumbleupon!     Technorati     File on Furl     Blinklist    Ma.gnolia     Yahoo! My Web