تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 7 از 7

نام تاپيک: آموزش شماره گذاری صفحات برنامه

  1. #1
    اگه نباشه جاش خالی می مونه eimanpaladin's Avatar
    تاريخ عضويت
    Sep 2008
    محل سكونت
    اطراف خونمون
    پست ها
    484

    پيش فرض آموزش شماره گذاری صفحات برنامه

    با سلام و خسته نباشید :
    من یه cms کوچیکی طراحی کردم و حالا می خوام در صفحه اخبار مثلا 5 خبر که گذاشته شد صفحه دوم ساخته بشه تو وب چیزی درباره آموزش شمارش صفحات پیدا نکردم

    ممنون میشم راهنمایی کنید و یک مثال در صورت امکان بزنید .

    یکی از دوستان در انجمن دیگر ایکد رو لطف کردند گزاشتند اما نمی دونم چجوری باید بزارمش تو صفحات برنامم

    ممنون میشم اگه توضیح بدید
    <?php

    include('config.php'); // فایل حاوی تنظیمات اتصال به پایگاه داده

    $tbl_name='tableName'; //نام جدول پایگاه داده


    $adjacents = 3; //تعداد صفحاتی که بعد از شماره ی صفحه نمایش می دهد

    $query = 'SELECT COUNT(*) as `num` FROM $tbl_name'; // کوئری دریافت تعداد صفحات قابل نمایش
    $total_pages = mysql_fetch_array(mysql_query($query));
    $total_pages = $total_pages['num'];

    $targetpage = 'pageName'; //اسم این فایل که کدها را در آن قرار می دهید

    $limit = 5; //تعداد پست هایی که در هر صفحه نشان داده می شود
    $page = $_GET['page'];
    if(
    $page)
    $start = ($page - 1) * $limit; //اولین گزینه گزینه ای که در صفحه نمایش داده می شود
    else
    $start = 0;

    /* دریافت اطلاعات
    column_name نام ستون یا ستونهایی می باشد که از جدول می خوانید
    */
    $sql = 'SELECT column_name FROM $tbl_name LIMIT $start, $limit';
    $result = mysql_query($sql);

    if (
    $page == 0) $page = 1;
    $prev = $page - 1;
    $next = $page + 1;
    $lastpage = ceil($total_pages/$limit);
    $lpm1 = $lastpage - 1;

    $pagination = '';
    if(
    $lastpage > 1)
    {
    $pagination .= '<div class=\'pagination\'>';
    //کلید قبلی
    if ($page > 1)
    $pagination.= '<a href=\'$targetpage?page=$prev\'>« previous</a>';
    else
    $pagination.= '<span class=\'disabled\'>« previous</span>';

    //صفحات
    if ($lastpage < 7 + ($adjacents * 2))
    {
    for (
    $counter = 1; $counter <= $lastpage; $counter++)
    {
    if (
    $counter == $page)
    $pagination.= '<span class=\'current\'>$counter</span>';
    else
    $pagination.= '<a href=\'$targetpage?page=$counter\'>$counter</a>';
    }
    }
    elseif(
    $lastpage > 5 + ($adjacents * 2))
    {

    if(
    $page < 1 + ($adjacents * 2))
    {
    for (
    $counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
    {
    if (
    $counter == $page)
    $pagination.= '<span class=\'current\'>$counter</span>';
    else
    $pagination.= '<a href=\'$targetpage?page=$counter\'>$counter</a>';
    }
    $pagination.= '...';
    $pagination.= '<a href=\'$targetpage?page=$lpm1\'>$lpm1</a>';
    $pagination.= '<a href=\'$targetpage?page=$lastpage\'>$lastpage</a>';
    }

    elseif(
    $lastpage - ($adjacents * 2) > $page &amp;amp;&amp;amp; $page > ($adjacents * 2))
    {
    $pagination.= '<a href=\'$targetpage?page=1\'>1</a>';
    $pagination.= '<a href=\'$targetpage?page=2\'>2</a>';
    $pagination.= '...';
    for (
    $counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
    {
    if (
    $counter == $page)
    $pagination.= '<span class=\'current\'>$counter</span>';
    else
    $pagination.= '<a href=\'$targetpage?page=$counter\'>$counter</a>';
    }
    $pagination.= '...';
    $pagination.= '<a href=\'$targetpage?page=$lpm1\'>$lpm1</a>';
    $pagination.= '<a href=\'$targetpage?page=$lastpage\'>$lastpage</a>';
    }

    else
    {
    $pagination.= '<a href=\'$targetpage?page=1\'>1</a>';
    $pagination.= '<a href=\'$targetpage?page=2\'>2</a>';
    $pagination.= '...';
    for (
    $counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
    {
    if (
    $counter == $page)
    $pagination.= '<span class=\'current\'>$counter</span>';
    else
    $pagination.= '<a href=\'$targetpage?page=$counter\'>$counter</a>';
    }
    }
    }

    //کلید بعدی
    if ($page < $counter - 1)
    $pagination.= '<a href=\'$targetpage?page=$next\'>next »</a>';
    else
    $pagination.= '<span class=\'disabled\'>next »</span>';
    $pagination.= '</div>\n';
    }
    ?>

    <?php
    while($row = mysql_fetch_assoc($result))
    {

    /*
    کدهای تکرار شما
    برای مثال:

    echo $row['name'].'<br>';

    */

    }
    ?>

    <?php echo $pagination; ?>

  2. #2
    کاربر فعال انجمن طراحی وب m.m.m5651's Avatar
    تاريخ عضويت
    Dec 2009
    محل سكونت
    Tehran
    پست ها
    1,496

    پيش فرض

    نخست: همه ی داده ها ی درون پایگاه رو اندازه گیری (count) کنید و بر تعداد مطالب در هر برگ تقسیم کنید.
    سپس: برای هر یک از شماره های صفحات یک فرم با متد "گِت"، ایجاد کنید.
    سپس: با استفاده از if isset تغییر پذیر گت (بهتره محتواش شامل شماره ی برگ باشه) و limit در کوئری ها، مطالب رو به روی صفحه بندازید. مثلا با یک for و if "گت" == i ، بگید که مثلا سپس، کوئری زیر رو انجام بده:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته اگر صفحه مساوی با صفحه ی اول نبود!
    Last edited by m.m.m5651; 05-10-2011 at 00:25.

  3. این کاربر از m.m.m5651 بخاطر این مطلب مفید تشکر کرده است


  4. #3
    اگه نباشه جاش خالی می مونه eimanpaladin's Avatar
    تاريخ عضويت
    Sep 2008
    محل سكونت
    اطراف خونمون
    پست ها
    484

    پيش فرض

    با تشکر دوست عزیزخوب متوجه نشدم میشه یکم توضیح بدید

    شرمنده

  5. #4
    داره خودمونی میشه moein_ak's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    167

    پيش فرض

    نخست: همه ی داده ها ی درون پایگاه رو اندازه گیری (count) کنید و بر تعداد مطالب در هر برگ تقسیم کنید.
    سپس: برای هر یک از شماره های صفحات یک فرم با متد "گِت"، ایجاد کنید.
    سپس: با استفاده از if isset تغییر پذیر گت (بهتره محتواش شامل شماره ی برگ باشه) و limit در کوئری ها، مطالب رو به روی صفحه بندازید. مثلا با یک for و if "گت" == i ، بگید که مثلا سپس، کوئری زیر رو انجام بده:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته اگر صفحه مساوی با صفحه ی اول نبود!
    واسه هر صفحه یه فرم
    با یه لینک ساده میشه این کارو انجام داد
    فرم فقط مال موقعیه که اطلاعاتو کاربر وارد میکنه نه وقتی که همه پارامترو مشخصن

  6. 2 کاربر از moein_ak بخاطر این مطلب مفید تشکر کرده اند


  7. #5
    داره خودمونی میشه ebse's Avatar
    تاريخ عضويت
    Jan 2011
    پست ها
    125

    پيش فرض

    سلام
    من از پی اچ پی چیزی نمیدونم ولی این توضیحات شاید به دردت بخوره
    اول با یه دستوره ( که من نمیدونم چطوری ) رکورد ها رو بخون و بریز تو یه آرایه مثلا $items
    بعدش مثلا اگه می خوای در هر صفحه x تا رکورد قرار بگیره این جوری بنویس ( شماره صفحه ات رو مثلا گذاشتی تو متغیر $page)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    نکته : متغیر $page فقط می تواند اعداد صحیح بزرگتر یا مساوی یک ( اعداد طبیعی ) را بگیرد و لا غیر

    موفق باشید
    Last edited by ebse; 05-10-2011 at 12:20.

  8. این کاربر از ebse بخاطر این مطلب مفید تشکر کرده است


  9. #6
    داره خودمونی میشه ebse's Avatar
    تاريخ عضويت
    Jan 2011
    پست ها
    125

    پيش فرض

    تکراری شد.......
    Last edited by ebse; 05-10-2011 at 12:17.

  10. این کاربر از ebse بخاطر این مطلب مفید تشکر کرده است


  11. #7
    کاربر فعال انجمن طراحی وب m.m.m5651's Avatar
    تاريخ عضويت
    Dec 2009
    محل سكونت
    Tehran
    پست ها
    1,496

    پيش فرض

    حق با شماست سوتی دادم
    این شکلی:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    -------------------
    -------------------
    با تشکر دوست عزیزخوب متوجه نشدم میشه یکم توضیح بدید

    شرمنده
    خواهش می کنم
    کدوم قسمت رو متوجه نشدید؟

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •