Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ใครพอจะแก้ปัญาเกี่ยกดหน้าสองวกับ โค้ดแบ่งหน้าได้ บ้าง ครับ รัน ได้ ปกตินะ ติดตรง เลขไม่ต่อเนื่อง ค้นหา แล้ว ไม่ตามเงื่อไข



 

ใครพอจะแก้ปัญาเกี่ยกดหน้าสองวกับ โค้ดแบ่งหน้าได้ บ้าง ครับ รัน ได้ ปกตินะ ติดตรง เลขไม่ต่อเนื่อง ค้นหา แล้ว ไม่ตามเงื่อไข

 



Topic : 061281



โพสกระทู้ ( 316 )
บทความ ( 0 )



สถานะออฟไลน์




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
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-06-07 08:55:47 By : ckcr View : 1033 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองใช้ของ 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
 


 

No. 2



โพสกระทู้ ( 316 )
บทความ ( 0 )



สถานะออฟไลน์


ครับผม เดี่ยว เอา มาลอง ดู

ได้ไม่ได้ไง จะมาแสดงผลให้ดูคครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-07 11:06:14 By : ckcr
 

 

No. 3



โพสกระทู้ ( 316 )
บทความ ( 0 )



สถานะออฟไลน์


แก้ได้ แล้ว 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
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ใครพอจะแก้ปัญาเกี่ยกดหน้าสองวกับ โค้ดแบ่งหน้าได้ บ้าง ครับ รัน ได้ ปกตินะ ติดตรง เลขไม่ต่อเนื่อง ค้นหา แล้ว ไม่ตามเงื่อไข
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่