PDA

View Full Version : صفحه بندی



aftabmahtab1
دوشنبه 23 دی 1392, 21:48 عصر
سلام دوستان

من میخوام صفحه بندی کنم اما با تایپ هیدن و میخوام روی هر عدد رفت بره به صفحه مخصوص خودش

داخل صفحه ای که میخوام عدد ها باشه نوشتم

for($i=1;$i<= $pagecount;++$i){

echo "<a href='#' onclick='empty(".$i.")' name='pagging' >".$i."</a> ;}

و داخل جاوااسکریپت

function empty(){

document.getElementById('action').value ='page';
document.getElementById('f1').submit();

}


که نمیدونستم متغیر i اینجا کجابنویسم که بشه در صفحه اصلی صداش زد

و داخل صفحه اصلی هم
تایپ هیدن تعریف کردم که همینaction هست
که اینجا میگم اگه اکشن همین page هست برو صفحه ای که عدد ها را نمایش میدم و جدول را چاپ کن


امیدوارم متوجه منظورم شده باشید

من میخوام بدونم چجوری تعریف کنم با تایپ هیدن .

esi2020
دوشنبه 23 دی 1392, 23:57 عصر
سلام دوستان

من میخوام صفحه بندی کنم اما با تایپ هیدن و میخوام روی هر عدد رفت بره به صفحه مخصوص خودش

داخل صفحه ای که میخوام عدد ها باشه نوشتم

for($i=1;$i<= $pagecount;++$i){

echo "<a href='#' onclick='empty(".$i.")' name='pagging' >".$i."</a> ;}

و داخل جاوااسکریپت

function empty(){

document.getElementById('action').value ='page';
document.getElementById('f1').submit();

}


که نمیدونستم متغیر i اینجا کجابنویسم که بشه در صفحه اصلی صداش زد

و داخل صفحه اصلی هم
تایپ هیدن تعریف کردم که همینaction هست
که اینجا میگم اگه اکشن همین page هست برو صفحه ای که عدد ها را نمایش میدم و جدول را چاپ کن


امیدوارم متوجه منظورم شده باشید

من میخوام بدونم چجوری تعریف کنم با تایپ هیدن .

می شه قصد خودتون رو از این کار بگین. اینجور که من متوجه شدم شما قبلا صفحات رو با گرفتن شماره آماده کردین و می خوایین جدول مربوطه با گرفتن این عدد چاپ بشه؟
در ضمن آیا این جدول از دیتابیس خونده می شه؟

aftabmahtab1
سه شنبه 24 دی 1392, 09:21 صبح
بله از دیتابیس خوانده میشه .منظورم از چاپ کردن جدول این بود که وقتی روی عدد 1 کلیک میکنم بره با onclick . انتخاب کنه اونهایی که از مثلا 0تا4 هستن را بیاره وقتی 2 را کلیک کردم ........

این کاررا نمیتونم با آدرسی که رایج هست و درون لینکی که داخل for نوشته میشه .بعدش میان مقدارش را باصدا زدن آدرس میگیرن.چون وقتی صفحه 2 را میزنم میپره به صفخه دیگه .

esi2020
سه شنبه 24 دی 1392, 12:22 عصر
بله از دیتابیس خوانده میشه .منظورم از چاپ کردن جدول این بود که وقتی روی عدد 1 کلیک میکنم بره با onclick . انتخاب کنه اونهایی که از مثلا 0تا4 هستن را بیاره وقتی 2 را کلیک کردم ........

این کاررا نمیتونم با آدرسی که رایج هست و درون لینکی که داخل for نوشته میشه .بعدش میان مقدارش را باصدا زدن آدرس میگیرن.چون وقتی صفحه 2 را میزنم میپره به صفخه دیگه .

برای این کار لازم نیست از جاوا اسکریپت استفاده کنید مگر اینکه بخوایین به صورت AJAX بدون رفرش صفحه این کار رو انجام بدین. شما می تونید به راحتی با استفاده از خود PHP هم این کار رو انجام بدین قطعه کد زیر اطلاعات دریافتی از MySQL را به صورت 10 تا 10 تا Sort یا به اصطلاح Limit می کند و با کلیک بر روی هر صفحه 10 تای بعدی نمایش داده می شود شما می تونید با تغییر اون مقدار 10 رو کمتر یا بیشتر کنید :




<?php
if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; };
$Page_start = ($page-1) * 10;
$Query = "SELECT * FROM `Test` ORDER BY `id` DESC LIMIT $Page_start, 10";
$SQL_Result = mysql_query ($Query,$connection);
?>
<table>
<tr><td>id</td><td>name</td></tr>
<?php
while ($row = mysql_fetch_assoc($SQL_Result)) {
?>
<tr>
<td><? echo $row["id"]; ?></td>
<td><? echo $row["name"]; ?></td>
</tr>
<?php
}
?>
</table>
<?php

$Query = "SELECT COUNT(id) FROM `Test`";
$SQL_Result = mysql_query($Query,$connection);
$row = mysql_fetch_row($SQL_Result);
$total_records = $row[0];
$total_pages = ceil($total_records / 10);

for ($i=1; $i<=$total_pages; $i++)
{
echo "<a href='test.php?page=".$i."'>".$i."</a> ";
}
?>


اگر مشکلی بود باز بگین

aftabmahtab1
سه شنبه 24 دی 1392, 17:06 عصر
مرسی دوست عزیز

اما همینو امتحان کرده بودم .تو لینک دچار مشکل میشم
ببین من یک صفحه اصلی دارم مثلا index که صفحات دیگه را درونش include میکنم

صفحه اول که درون index من include کردم اسمش page 1 هست که منو من قرار داره که با کلیک روی آن میره به صفحه page2 که هما ن جدول هست .
اگه بخوام به روشی که شما گفتید برم آدرس دهی دچار مشکل میشم با زدن مثلا شماره ها اول میره به page 1 دوباره باید روی منوی که منو میبره به page2 کلیک کنم وقتی به page 2 رفتم اونجا سطرهای جدول مربوط به هر شماره را میاره برای همین گفتم از جاوااسکریپت برم

esi2020
سه شنبه 24 دی 1392, 18:19 عصر
مرسی دوست عزیز

اما همینو امتحان کرده بودم .تو لینک دچار مشکل میشم
ببین من یک صفحه اصلی دارم مثلا index که صفحات دیگه را درونش include میکنم

صفحه اول که درون index من include کردم اسمش page 1 هست که منو من قرار داره که با کلیک روی آن میره به صفحه page2 که هما ن جدول هست .
اگه بخوام به روشی که شما گفتید برم آدرس دهی دچار مشکل میشم با زدن مثلا شماره ها اول میره به page 1 دوباره باید روی منوی که منو میبره به page2 کلیک کنم وقتی به page 2 رفتم اونجا سطرهای جدول مربوط به هر شماره را میاره برای همین گفتم از جاوااسکریپت برم

من که کلا نفهمیدم قصد شما چیه!؟ لطفا کد رو کامل بزنین تا بررسی بشه. در ضمن با این روش به راحتی می شه اطلاعات دریافتی ازدیتابیس رو صفحه بندی کرد هیچ مشکلی هم نداره