|
|
|
ใครพอจะแก้ปัญาเกี่ยกดหน้าสองวกับ โค้ดแบ่งหน้าได้ บ้าง ครับ รัน ได้ ปกตินะ ติดตรง เลขไม่ต่อเนื่อง ค้นหา แล้ว ไม่ตามเงื่อไข |
|
|
|
|
|
|
|
Code (PHP)
<fieldset >
<legend>แสดงข้อมูลโครงการ</legend>
<form name"add" method="post" action="">
<h3>
โครงการสาขา <?= $MAJOR[$_SESSION['id_major']];?> ประจำปี พ.ศ. <select name="budge_year" >
<? for ($i=$nowYear;$i>=$beginYear;--$i){$j = $i+543 ;
echo "<option value=$i " ;
if($_POST['budge_year']==$i){
echo "selected='selected'";
}
echo ">".$j."</option>"; }
?>
</select>
<input name="on" type="hidden" id="on" value="1" />
<input name="button" type="submit" class="button" value="ค้นหา" />
</form>
</h3>
<form action="add.php" >
<div id="submitadd">
<input type="submit" class="button" value="เพิ่มข้อมูลโครงการใหม่" />
</div>
</form>
Code (PHP)
<?php
mysql_connect(localhost,root,1234) or die ("ไม่สามารถต่อติดเชื่อมฐานข้อมูลได้");
mysql_select_db(student_checkproject) or die ("ไม่สามารถติดต่อ ตารางได้");
?>
<?php
// สร้างฟังก์ชั่น สำหรับแสดงการแบ่งหน้า
function page_navigator($before_p,$plus_p,$total,$total_p,$chk_page){
global $urlquery_str;
$pPrev=$chk_page-1;
$pPrev=($pPrev>=0)?$pPrev:0;
$pNext=$chk_page+1;
$pNext=($pNext>=$total_p)?$total_p-1:$pNext;
$lt_page=$total_p-4;
if($chk_page>0){
echo "<a href='?s_page=$pPrev&urlquery_str=".$urlquery_str."' class='naviPN'>Prev</a>";
}
if($total_p>=11){
if($chk_page>=4){
echo "<a $nClass href='?s_page=0&urlquery_str=".$urlquery_str."'>1</a><a class='SpaceC'>. . .</a>";
}
if($chk_page<4){
for($i=0;$i<$total_p;$i++){
$nClass=($chk_page==$i)?"class='selectPage'":"";
if($i<=4){
echo "<a $nClass href='?s_page=$i&urlquery_str=".$urlquery_str."'>".intval($i+1)."</a> ";
}
if($i==$total_p-1 ){
echo "<a class='SpaceC'>. . .</a><a $nClass href='?s_page=$i&urlquery_str=".$urlquery_str."'>".intval($i+1)."</a> ";
}
}
}
if($chk_page>=4 && $chk_page<$lt_page){
$st_page=$chk_page-3;
for($i=1;$i<=5;$i++){
$nClass=($chk_page==($st_page+$i))?"class='selectPage'":"";
echo "<a $nClass href='?s_page=".intval($st_page+$i)."'>".intval($st_page+$i+1)."</a> ";
}
for($i=0;$i<$total_p;$i++){
if($i==$total_p-1 ){
$nClass=($chk_page==$i)?"class='selectPage'":"";
echo "<a class='SpaceC'>. . .</a><a $nClass href='?s_page=$i&urlquery_str=".$urlquery_str."'>".intval($i+1)."</a> ";
}
}
}
if($chk_page>=$lt_page){
for($i=0;$i<=4;$i++){
$nClass=($chk_page==($lt_page+$i-1))?"class='selectPage'":"";
echo "<a $nClass href='?s_page=".intval($lt_page+$i-1)."'>".intval($lt_page+$i)."</a> ";
}
}
}else{
for($i=0;$i<$total_p;$i++){
$nClass=($chk_page==$i)?"class='selectPage'":"";
echo "<a href='?s_page=$i&urlquery_str=".$urlquery_str."' $nClass >".intval($i+1)."</a> ";
}
}
if($chk_page<$total_p-1){
echo "<a href='?s_page=$pNext&urlquery_str=".$urlquery_str."' class='naviPN'>Next</a>";
}
}
?>
<?php
if($_POST['on']==1){
$q="SELECT * FROM project where id_major=$_SESSION[id_major] AND budge_year=$_POST[budge_year] ";
$q.=" ORDER BY id_project ";
}else{
$q="SELECT * FROM project where id_major=$_SESSION[id_major] AND budge_year='$nowYear' ";
$q.=" ORDER BY id_project ";
}
$qr=mysql_query($q);
$total=mysql_num_rows($qr);
$e_page=5; // กำหนด จำนวนรายการที่แสดงในแต่ละหน้า
if(!isset($_GET['s_page'])){
$_GET['s_page']=0;
}else{
$chk_page=$_GET['s_page'];
$_GET['s_page']=$_GET['s_page']*$e_page;
}
$q.=" LIMIT ".$_GET['s_page'].",$e_page";
$qr=mysql_query($q);
if(mysql_num_rows($qr)>=1){
$plus_p=($chk_page*$e_page)+mysql_num_rows($qr);
}else{
$plus_p=($chk_page*$e_page);
}
$total_p=ceil($total/$e_page);
$before_p=($chk_page*$e_page)+1;
?>
<table class="showdata" border='1' cellspacing="0">
<tr bgcolor="#FEE3AD";>
<th>ลำดับ</th>
<th>ชื่อโครงการ</th>
<th>สถานะโครงการ</th>
<th>งบประมาณ</th>
<th>ลบ</th>
<th>แก้ไข</th>
</tr>
<?php
while($rs=mysql_fetch_array($qr)){
?>
<tr bgcolor='#faf8e2'; onmouseover="this.style.backgroundColor='#FEF0D3'" onmouseout="this.style.backgroundColor=''" >
<td align="center"><?ตรงนี้ครับ?></td> // logical คือ ผมงงตัวแปร ลองหลายแบบยังไม่ได้
<td><?=$rs['project_name'];?></td>
<td><?=$rs['project_status'];?></td>
<td><?=$rs['budget'];?></td>
<td><a href="JavaScript:if(confirm('ต้องการลบข้อมูลโครงการนี้')==true){window.location='showdata.php?action=del&&id_project=<?=$row['id_project']?>';}">ลบ</a></td>
<td><a href="edit.php?id_project=<?=$row['id_project']?>">แก้ไข</a></td>
</tr>
<?php
$i++;} ?>
</table>
<br/>
<?php if($total>0){ ?>
<div class="browse_page">
<?php
// เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า
page_navigator($before_p,$plus_p,$total,$total_p,$chk_page);
?>
</div>
<?php } ?>
</fieldset>
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2011-06-07 08:58:19 2011-06-07 09:01:01
|
|
|
|
|
Date :
2011-06-07 08:55:47 |
By :
ckcr |
View :
1033 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใช้ของ ThaiCreate.Com ดูครับ ดูและแก้ไขง่ายกกว่าครับ
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP & MySQL Tutorial</title>
</head>
<body>
<?
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "SELECT * FROM customer ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$Per_Page = 2; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page);
if($Num_Rows<=$Per_Page)
{
$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
$Num_Pages =($Num_Rows/$Per_Page)+1;
$Num_Pages = (int)$Num_Pages;
}
$strSQL .=" order by CustomerID ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
?>
<table width="600" border="1">
<tr>
<th width="91"> <div align="center">CustomerID </div></th>
<th width="98"> <div align="center">Name </div></th>
<th width="198"> <div align="center">Email </div></th>
<th width="97"> <div align="center">CountryCode </div></th>
<th width="59"> <div align="center">Budget </div></th>
<th width="71"> <div align="center">Used </div></th>
</tr>
<?
while($objResult = mysql_fetch_array($objQuery))
{
?>
<tr>
<td><div align="center"><?=$objResult["CustomerID"];?></div></td>
<td><?=$objResult["Name"];?></td>
<td><?=$objResult["Email"];?></td>
<td><div align="center"><?=$objResult["CountryCode"];?></div></td>
<td align="right"><?=$objResult["Budget"];?></td>
<td align="right"><?=$objResult["Used"];?></td>
</tr>
<?
}
?>
</table>
<br>
Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page!=$Num_Pages)
{
echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>Next>></a> ";
}
mysql_close($objConnect);
?>
</body>
</html>
Go to : PHP MySQL List Record Paging/Pagination
|
|
|
|
|
Date :
2011-06-07 10:47:54 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับผม เดี่ยว เอา มาลอง ดู
ได้ไม่ได้ไง จะมาแสดงผลให้ดูคครับ
|
|
|
|
|
Date :
2011-06-07 11:06:14 |
By :
ckcr |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แก้ได้ แล้ว 3 วัน กับโค้ด เดิม ๆ อิอิ
Code (PHP)
<!-- header -->
<?
include "../config.php";
include "../function/page.php";
if($_GET['action']=='del'){
$sql="DELETE FROM project WHERE id_project=$_GET[id_project]";
if (!mysql_query($sql))
{
die('Error: ' . mysql_error());
}
echo"<META HTTP-EQUIV=Refresh Content=1;URL='showdata.php?&id_major=$_GET[id_major]&budge_year=$_GET[budge_year]'>";
}
?>
<div id="header">
<div id="inheader">
<div id="logo"></div>
<div id="textlogo"></div>
<div class="clear" ></div>
</div>
</div>
<!-- header -->
<?
if($_SESSION['id_major']==1){
?>
<!-- content -->
<div id="content">
<? include"../common/menu.php"?>
<div id="ContentData">
<div id="ContentData1">
<div id="ContentData2">
<!-- contentDATA -->
<fieldset >
<p>
<form name"add" method="get" action="">
<h3>
โครงการสาขา <select name="id_major">
<? for($im=1;$im<=7;++$im){
echo "<option value={$im} " ;
if($_GET['id_major']==$im){
echo "selected='selected'";
}
echo ">".$MAJOR[$im]."</option>"; }?>
</select>
ประจำปี พ.ศ. <select name="budge_year">
<? for ($i=$nowYear;$i>=$beginYear;--$i){$j = $i+543 ;
echo "<option value=$i " ;
if($_GET['budge_year']==$i){
echo "selected='selected'";
}
echo ">".$j."</option>"; }
?>
</select>
<input name="button" type="submit" class="button" value="ค้นหา" />
</form>
</h3>
<form action="add.php" >
<div id="submitadd">
<input type="submit" class="button" value="เพิ่มข้อมูลโครงการใหม่" />
</div>
</form>
<?php
if(($_GET['id_major']!="") and ($_GET['budge_year']!=""))
{
$q="SELECT * FROM project where id_major=$_GET[id_major] AND budge_year=$_GET[budge_year] ";
}
else
{
$q="SELECT * FROM project WHERE id_major=1 AND `budge_year` = '$nowYear'" ;
}
//$q.=" ORDER BY id_project ";
$qr=mysql_query($q);
$total=mysql_num_rows($qr);
$e_page=10; //
if(!isset($_GET['s_page'])){
$_GET['s_page']=0;
}else{
$chk_page=$_GET['s_page'];
$_GET['s_page']=$_GET['s_page']*$e_page;
}
$q.=" LIMIT ".$_GET['s_page'].",$e_page";
$qr=mysql_query($q);
if(mysql_num_rows($qr)>=1){
$plus_p=($chk_page*$e_page)+mysql_num_rows($qr);
}else{
$plus_p=($chk_page*$e_page);
}
$total_p=ceil($total/$e_page);
//echo $q;
if($total!=0){
?>
<table class="showdata" border='1' cellspacing="0">
<tr>
<th>ลำดับ</th>
<th>ชื่อโครงการ</th>
<th>สถานะโครงการ</th>
<th>งบประมาณ</th>
<th>ลบ</th>
<th>แก้ไข</th>
</tr>
<?php
$i=1;
while($rs=mysql_fetch_array($qr)){
?>
<tr>
<td align="center"><?=($chk_page*$e_page)+$i?></td>
<td><?=$rs['project_name'];?></td>
<td><?=$rs['project_status'];?></td>
<td><?=$rs['budget'];?></td>
<td><a href="JavaScript:if(confirm('ต้องการลบข้อมูลโครงการนี้')==true){window.location='showdata.php?action=del&&id_project=<?=$rs['id_project']?>&&id_major=<?=$_GET[id_major]?>&&budge_year=<?=$_GET[budge_year]?>';}">ลบ</a></td>
<td><a href="edit.php?id_project=<?=$rs['id_project']?>">แก้ไข</a></td>
</tr>
<?php $i++; } ?>
</table>
<?php if($total>0){ ?>
<div class="browse_page">
<?php
$urlquery_str="";
if(isset($_GET['id_major']) && $_GET['id_major']!=""){
$urlquery_str.="&id_major=".$_GET['id_major'];
}
if(isset($_GET['budge_year']) && $_GET['budge_year']!=""){
$urlquery_str.="&budge_year=".$_GET['budge_year'];
}
page_navigator($before_p,$plus_p,$total,$total_p,$chk_page);
?>
</div>
<?php } ?>
<?
}else{
echo "<font size=2 color=red ><center>ไม่มีข้อมูลที่ท่านต้องการ</center></font>";
}
?>
|
ประวัติการแก้ไข 2011-06-10 22:50:10 2011-06-10 22:51:11
|
|
|
|
Date :
2011-06-10 22:49:28 |
By :
ckcr |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|