التغطية المصورة ليوم سوالف: الجزء الأول، الجزء الأخير
الفائزون في المسابقة الأصغر لسوالف كاست

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

موضوع مغلق  
 
LinkBack أدوات الموضوع
عضو نشيط
تاريخ التسجيل: Apr 2003-
#1 (permalink)  
كائن تعدد الصفحات (2)


السلام عليكم ورحمة الله
النسخة الثانية من كائن تعدد الصفحات بعد التطوير المهم.

القديم
http://www.rafiaphp.com/news.php?action=view&id=33

كان القديم لا يقف عند حد معين من الصفحات اي بعدد الصفحات يتم طباعة جميع ارقام الصفحات بتسلسل
واليوم استطعت ان اصل لما اريد وما يريدة كل مبرمج فهذا الكائن لايمكن ان يطبع اكثر من اربع ارقام ,

الارقام التي يطبعها , رقم الصفحة الحالية وقبلها رقم صفحة وبعدها صفحتان
ثم يطبع الصفحة الاولى والصفحة الاخيرة
وهنا مثال مع النص البرمجي للكائن
بعد التطوير
http://www.rafiaphp.com/rafia/exampl...start=9&page=4

طريقة عمل الكائن
كود PHP:
<?
//ادراج ملف  الكائن
require_once('pager.php');
//انشاء اتصال بقاعدة البينات
mysql_pconnect("$dbserver""$dbuser""$dbpword");
mysql_select_db("$dbname");
//انشاء تواجد للكائن ثم ادخل عدد السجلات في كل صفحة
$Page = new Pager("5");
//هنا قم بتمرير اسم الجدول وحفظ نتيجة الاستعلام في متغير
$result $Page->PageResult("rafia_news");
//استخراج النتائج في حلقة
while($row mysql_fetch_array($result))
{
     
//قم بطباعة النتائج
}
//ارقام الصفحات والروابط  ضعها في اي مكان ترغب
$Page->PageNum();
اتمنى ان يفيد الجميع






rafia غير متواجد حالياً   قديم 13-04-2003, 01:05 PM
عضو فعال
تاريخ التسجيل: Nov 2002-
#2 (permalink)  

مرحباً بك في سوالف وشكرا على هذا الكائن






__________________
البريد
almuslim@gmail.com
الماسنجر
muslem@php.net
Mr.Muslem غير متواجد حالياً   قديم 13-04-2003, 01:25 PM
عضو سوبر نشيط
تاريخ التسجيل: Mar 2000-
#3 (permalink)  

بارك الله فيك أخي رفيع، وإلى الأمام






أبو ماجد الصارم غير متواجد حالياً   قديم 13-04-2003, 03:12 PM
عضو نشيط
تاريخ التسجيل: May 2002-
#4 (permalink)  

طريقة جميلة أخي rafia، ولكن ما رأيك في أن تطور هذا الكائن وتجعله مستقلاً عن استعلام MySQL بحيث يمكن استخدامه مع أي شيء آخر، كأن تقول:
كود PHP:

$rpp 
5;
$rows 200;
$currentPage = (integer) $_GET['page'];

$pageObj = new Pager($rpp$rows$currentPage);

$rowStart $pageObj->rowsStart;
$rowLimit $pageObj->rowsLimit

// يمكن استخدام استعلام مثلاً
mysql_query("....... LIMIT $rowStart, $rowLimit")

echo 
$pageObj->pageLinks($PHP_SELF$currentPage); 
أعتقد أنك فهمت قصدي في المثال






__________________
visualmind (at) php.net
أعتذر كثيراً عن غيابي في هذه الفترة نظراً لانشغالي بإعداد الموقع الجديد
VisualMind غير متواجد حالياً   قديم 14-04-2003, 12:31 AM
عضو نشيط
تاريخ التسجيل: Apr 2003-
#5 (permalink)  

Mr.Muslem
الله يبقيك ويطول في عمرك شرف لي ان اكون منكم

___
أبو ماجد الصارم
هذا جزء من ما تعلمته منك وانا واحد من تلاميذك

___
VisualMind
اقتراح جميل وان شاء الله اصلحة قريبا وفهمت قصدك من المثال
لكن مثالك اثار عندي بعض الاسائله

$_GET هذا مقبض اعرف عنه انه للنماذج اذا كان get
وانت سحبت به 'page' الموجودة في عنوان الصفحة
هل استطيع سحب قيم من العنوان بهذه الطريقة حتى وان لم تكن
مستقبلة من نموذج

شكرا على الاقتراح واعدك ان اطور الكائن على ما تفضلت به






__________________
مجموعة بي اتش بي العربية www.php4arab.org
البوابة العربية www.arabportal.net
rafia غير متواجد حالياً   قديم 14-04-2003, 06:04 PM
عضو نشيط
تاريخ التسجيل: May 2002-
#6 (permalink)  

استنتاجك صحيح أخي rafia،
عملية الإرسال عن طريق نموذج باستخدام get تقوم بتحويل القيم المدخلة إلى متسلسلة بعد علامة الاستفهام في عنوان الصفحة الهدف، ويعني ذلك أنه بالإمكان الاكتفاء بوضع قيم في العنوان بدلاً من الإرسال من نموذج.
يمكنك استخدام GET_$ أو HTTP_GET_VARS$ دائماً لقراءة قيم البيانات المعطاة عن طريق العنوان.

وبالمناسبة حول كل من GET و POST هناك درس شرحت فيه الفرق بين الطريقتين لإرسال المعطيات ومعناهما هنا http://www.arabteam2000.com/vb/showt...threadid=12246






__________________
visualmind (at) php.net
أعتذر كثيراً عن غيابي في هذه الفترة نظراً لانشغالي بإعداد الموقع الجديد
VisualMind غير متواجد حالياً   قديم 17-04-2003, 12:01 AM
عضو نشيط
تاريخ التسجيل: Apr 2003-
#7 (permalink)  

مشكور استاذ صلاح الموضوع جميل جدا

لكن بقي لدي سؤال حاولت الاجابة عليه بعدة طرق لكن اشعر ان حلي غير مناسب او ان هناك حل افضل
وهو : اذا حبيت اعرف هل HTTP_POST_VARS$
قادمة من نفس الموقع او من مكان خارجي ,
من احد الحلول استخدمة HTTP_REFERER لتعرف على عنوان الصفحة السابقة وبحثت فيه عن اسم الموقع
لكن هل هناك سبيل لمنع اي بينات من خارج الموقع بطريقة اوثق ؟

وشكرا مرة اخرى






__________________
مجموعة بي اتش بي العربية www.php4arab.org
البوابة العربية www.arabportal.net
rafia غير متواجد حالياً   قديم 17-04-2003, 04:43 AM
عضو نشيط
تاريخ التسجيل: May 2002-
#8 (permalink)  

rafia،
يمكنك الاستعانة بالجلسات، قم بتسجيل جلسة في بداية الصفحة الأولى، وسجل متغيراً على مستوى الجلسة يحدد أن المستخدم دخل إلى الصفحة الأولى ويشمل رقم IP الدخول للصفحة الأولى، وعند الإرسال إلى الصفحة الثانية قم بالتأكد من متغير الجلسة نفسه ورقم IP الداخل للصفحة الأولى وقارنه بالرقم IP للمرسل.

هذه الطريقة تمنع بنسبة عالية جداً وجود إرسال من مكان آخر، لكنها لا تمنع ذلك مائة بالمائة.






__________________
visualmind (at) php.net
أعتذر كثيراً عن غيابي في هذه الفترة نظراً لانشغالي بإعداد الموقع الجديد
VisualMind غير متواجد حالياً   قديم 23-04-2003, 01:54 PM
عضو فعال
تاريخ التسجيل: Nov 2002-
#9 (permalink)  

التحميل من فين ؟؟؟






__________________
البريد
almuslim@gmail.com
الماسنجر
muslem@php.net
Mr.Muslem غير متواجد حالياً   قديم 24-05-2003, 11:15 AM
عضو نشيط
تاريخ التسجيل: Feb 2003-
#10 (permalink)  

جزاك الله خير أخوي rafia

على جهودكم والله يوفقك في الدنيا والآخرة






__________________
>> .... <<
^FaWaZ.NeT^ غير متواجد حالياً   قديم 25-05-2003, 04:09 AM
عضو نشيط
تاريخ التسجيل: Apr 2003-
#11 (permalink)  

معليش الروابط اصبحت خطأ
بسبب نقل الموقع
وهنا الكائن والمثال

جزاك الله خير اخوي FaWaZ.NeT






الملفات المرفقة
نوع الملف: zip pager.zip‏ (1.9 كيلوبايت, المشاهدات 154)
__________________
مجموعة بي اتش بي العربية www.php4arab.org
البوابة العربية www.arabportal.net
rafia غير متواجد حالياً   قديم 25-05-2003, 07:21 AM
عضو فعال
تاريخ التسجيل: Nov 2002-
#12 (permalink)  

شكراً على الموضوع الجميل






__________________
System
KaRiM_NET غير متواجد حالياً   قديم 25-05-2003, 04:08 PM
موضوع مغلق


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة



الساعة الآن: 08:44 AM بتوقيت المملكة العربية السعودية