PDA

View Full Version : next to



namahangir
پنج شنبه 16 فروردین 1386, 18:37 عصر
سلام.من یک سوال داشتم.من یک گالری عکس درست کردم.حالا میخوام در هر صفحه فقط 5 عکس قرار بگیره یعنی وقتی عکس 6 را اضافه کردم به وسیله next صفحه بعدی بره.یعنی با اضافه کردن عکس جدید عکس ششم در صفحه بهدی قرار بگیره.اگه ممکنه کامل توضیح بدبد.ممنونم

cybercoder
پنج شنبه 16 فروردین 1386, 20:25 عصر
Pagination in PHP جستجو در وب جواب شما رو میده.

موفق باشید

ealvandi
جمعه 17 فروردین 1386, 00:12 صبح
این کد رو من نوشتم و براتون گذاشتم , کاملا تست شده و جواب میده
فقط باید تو بانک اطلاعاتیت (mysql) یک بانک به نام news_bank درست کنی و فایل news.sql رو restore کنی .
ضمنان تو آدرس بار آدرس فایل رو برای اجرا به اینصورت بنویس pagination.php?first=1 (http://localhost/j/pagination.php?first=1)
پس از اجرا صفحه اینجوری ظاهر میشه البته خودت به قیافش برس و مارو از 2A بی نصیب نذار


file:///C:/pic.GIF


موفق باشی

namahangir
جمعه 17 فروردین 1386, 11:20 صبح
اولا سلام.دوما خیلی مرام گذاشتی که این برنامه را واسم نوشتی شرمندم کردی.فقط من تازه کارم تو پی اچ پی واسه همینم دوتا سوال دارم.یک این که:
"news.sql رو restore کنی "
یعنی چی.یعنی چی کار باید بکنم.
دوم این که من نتونستم درست بخونم چه چیزی را باید تو دیتا بیس وارد کنم.اخه توی فایل text درهم نوشته شده .اگه زحمتی نیست و با عرض شرمندگی اگه ممکنه یه بار دیگه این فایل و به صورت مرتب شده بهم بدید.
یک دنیا هم ممنونم.
التماس دعا
یاعلی

ealvandi
جمعه 17 فروردین 1386, 12:27 عصر
اولا سلام دوما news.sql فایل بانک اطلاعاتی هست که باید تو mysql فراخوانی Import کنی

سوما تو اصلا با محتوای news.sql کاری نداشته باش و فقط import کنش

چهارما فایل کد تو pagination.php هستش.

موفق باشی

imankho
پنج شنبه 30 فروردین 1386, 08:07 صبح
سلام تکنیکی که گفته بودید رو استفاده کردم اما کار نمی کرد !

اولا به صورت دستی فایل news.sql را اجرا کردم
دوما تو فایل برنامه هم یک دیتا بس رو اشتباه نوشته بودید.درست کردم
اما برنامه رو که اجرا می کنم همه لینک ها یک صفحه را نمایش می ده.
میشه بیشتر توضیح بدین؟

ealvandi
پنج شنبه 30 فروردین 1386, 17:28 عصر
:لبخندساده: همه لینکها باید هم به یک صفحه اشاره کنه ، چون ما تمامی رکورد ها رو در یک صفحه ولی با هر لینک از رکورد 1 .. 5 ، 6 ... 10 و ... نمایش میدیم.

شما تعداد رکورد ها تو نگاه کن که حتما بالاتر از 10 تا باشه.


موفق باشی

imankho
جمعه 31 فروردین 1386, 14:08 عصر
قصد جسارت ندارم اما این کد تمیز تر و خیلی راحت تر این موضوع رو نشون میده
:لبخندساده:



<?php

@mysql_connect($localhost, $user, $password) or die("ERROR--CAN'T CONNECT TO SERVER");
@mysql_select_db($database) or die("ERROR--CAN'T CONNECT TO DB");

$limit = 25;
$query_count = "SELECT count(*) FROM table";
$result_count = mysql_query($query_count);
$totalrows = mysql_num_rows($result_count);

if(empty($page)){
$page = 1;
}


$limitvalue = $page * $limit - ($limit);
$query = "SELECT * FROM table LIMIT $limitvalue, $limit";
$result = mysql_query($query) or die("Error: " . mysql_error());

if(mysql_num_rows($result) == 0){
echo("Nothing to Display!");
}

$bgcolor = "#E0E0E0"; // light gray

echo("<table>");

while($row = mysql_fetch_array($result)){
if ($bgcolor == "#E0E0E0"){
$bgcolor = "#FFFFFF";
}else{
$bgcolor = "#E0E0E0";
}

echo("<tr bgcolor=".$bgcolor.">n<td>");
echo($row["users"]);
echo("</td>n<td>");
echo($row["usersID"]);
echo("</td>n</tr>");
}

echo("</table>");

if($page != 1){
$pageprev = $page--;

echo("<a href=\"$PHP_SELF&page=$pageprev\">PREV".$limit."</a> ");
}else{
echo("PREV".$limit." ");
}

$numofpages = $totalrows / $limit;

for($i = 1; $i <= $numofpages; $i++){
if($i == $page){
echo($i." ");
}else{
echo("<a href=\"$PHP_SELF?page=$i\">$i</a> ");
}
}


if(($totalrows % $limit) != 0){
if($i == $page){
echo($i." ");
}else{
echo("<a href=\"$PHP_SELF?page=$i\">$i</a> ");
}
}

if(($totalrows - ($limit * $page)) > 0){
$pagenext = $page++;

echo("<a href=\"$PHP_SELF?page=$pagenext\">NEXT".$limit."</a>");
}else{
echo("NEXT".$limit);
}

mysql_free_result($result);

?>