کمک برای ساخت یک Paging

tarhebartar

Member
سلام دوستان.

من برای آوردن لینک اخبار توی صفحه اصلی با دیتابیس مشکلی ندارم و این کار رو می تونم بکنم ولی تنها مشکل من این هست که چون لینک اخبار رو دستی میارم و خودم یه جدول داینامیک گذاشتم و از دیتا بیس با کدی که خودم با سی شلرپ نوشتم میارم نمی تونم یه paging براش درست کنم.کسی می تونه بگه که چه جوری می تونم با #C بنویسم که اعداد صفحه در بایین بیاد و با کلیک روی عدد مثلا 10 رکورد بعدی سورت بشه؟

**** در ضمن یه پیوست از پروژه خودم می زارم اگر کسی خواست بگیره کمک کنه!!!!!
 

پیوست ها

  • WebSite12.rar
    7.8 کیلوبایت · بازدیدها: 8

MDP

Well-Known Member
ساده ترین روش اینه که اول یه کوری بزنی و تعداد کل رو پیدا کنی!
بعدش توی گرید ویو با کوری سترینگ سلکت کن!
 

Dark-M4N

Member
خدمت شما دوست عزیز

PHP:
<?php
$min= $_GET['long'];
$max=($min+10);
include"includes/config.php";
if(empty($min))
$min="0";
$sert = "SELECT * FROM news ORDER BY date DECS LIMIT $min,$max" ;
$query = @mysql_query($sert);
while($r2=@mysql_fetch_array($query)){
?>
<html dir='ltr'><head>
<meta http-equiv='Content-Language' content='en-us'>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1252'>



</head><body><table id='table1' width='100%' border='0' cellpadding='0' cellspacing='0' height='100%'>
        <tbody>
        <tr>
          <td style='font-size: 11px; color: rgb(89, 89, 89); line-height: 180%; font-family: tahoma;' width='10'></td>
          <td style='font-size: 11px; color: rgb(89, 89, 89); line-height: 180%; font-family: tahoma;' valign='top'>
            <table width='100%' border='0'>
                <tbody><tr>
                    <td style='font-size: 11px; color: rgb(89, 89, 89); line-height: 180%; font-family: tahoma;' width='80%'>
                        <div dir='ltr' style='margin-top: 20px; margin-left: 35px;'>
                            <p align='center'>
                            <span lang="fa">نام خبر :<?php echo$r2['title']?></span><br>
                            <span lang="fa">تاریخ اضافه شدن خبر :<?php echo $r2['date']?></span></p>
                            <p align="right">&nbsp;</p>
                
                            <p align="right">&nbsp;</p>
                            <p align=''right''>&nbsp;</p>
                            <p align='right'>&nbsp;</div>
                    
                    </td>
                
                </tr>
            </tbody></table>
          </td>
          <td style='font-size: 11px; color: rgb(89, 89, 89); line-height: 180%; font-family: tahoma;' width='10'></td></tr></tbody></table>


<p>&nbsp;</p><hr>


</body></html>

<? }
?>

 <a href=archive.php?long=<? echo $max?>>Next Archive Page (<? echo"From $min -  $max"?>) </a>

گفتم اگه ?logn خالی بود اونو صفر قرار بده و $max
رو +10 اون عددی که توی لانگ وارد میشه بزار

بعد توسط دستور LIMIT هم بردار اون $min که همون لانگ هست و $max رو بیار

میدونم که همه استادن ولی اینا رو برای دوستانی که زیاد آشنایی ندارن گفتم

موفق باشید
 

tarhebartar

Member
نفهمیدم!

دوست عزیز میشه درست توضیح بدید.ممنون!

اگه میشه کد من رو ببینید و خودتون ادیتش کنید.

با احترام.

ساده ترین روش اینه که اول یه کوری بزنی و تعداد کل رو پیدا کنی!
بعدش توی گرید ویو با کوری سترینگ سلکت کن!
 

TNZ187

Member
سلام
راه هایی که وجود داره ، اصلش این هست که شما اول تعداد کل آیتم های جواب رو پیدا کنی . بعدش باید ببینی توی هر صفحه چندتا می خواهی بار کنی . بعد با محاسبات معلوم می شه که چندتا صفحه نیاز داری . ( البته اگه بخواهی صفحه ها رو نشون بدی ، وگرنه که دیگه خیلی راحته ) . بعد می مونه اینکه چه طور صفحه های مختلف رو نشون بدی . برای این کار هم دو راه ( البته اون هایی که من بلدم) وجود داره ، یکی این که از متد Fill دیتا آداپتر ها ( SqlDataAdapter ) استفاده کنی که می تونه از یک رکورد تا یک رکورد خاص رو برگردونه . مثلا از رکورد 20 تا 40 برای صفحه هایی که 20 تایی نشون می دن می شه همون صفحه دوم.
راه دیگه ای که وجود داره ، مربوط می شه به خود TSQL . از فرمان
استفاده کن . این فرمان همون کاری رو که دیتا آداپتر انجام می داد انجام می ده ، منتها خودت بدون واسطه فرمان رو به دیتابیس می دی .
بعد هم سعی کن خودت کنترلش رو بنویسی ، چون کنترل های موجود فقط باعث سردرگمی شما می شه .
اگه هم نخواستی ، Pager های مختلف و آماده موجود هست که یکیش هم مال خود مایکروسافت هستش ، اگه خواستی خودشون مراحل ساختش رو توضیح دادن . فقط شما یک جست و جو درباره asp.net Pager انجام بدی ، کلی جواب می یاد . ( البته من خودم با یک روز کار بی وقفه موفق شدم دو نسخه بسازم ، یکی برای آژاکس و یکی غیر آژاکس :cool: )
 

جدیدترین ارسال ها

بالا