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,027

HOME > PHP > PHP Forum > css page-break-after กับการแบ่งหน้าที่ดึงข้อมูลมาจาก mysql



 

css page-break-after กับการแบ่งหน้าที่ดึงข้อมูลมาจาก mysql

 



Topic : 112824



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



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



ต้องการแบ่งหน้าพิมพ์รายงาน แบ่งข้อมูลหน้าละ 5หรือ10 รายการ และต้องการให้โชว์ด้วยว่า มีกี่ page เช่น ข้อมูลที่1-10 อยู่ page1 ตรงหัวมุม ต้องทำยังไงค่ะ สมมติว่าข้อมูลมี4รายการ ความจริงต้องอยู่หน้าเดียวกัน แต่ตอนนี้แยกเป็น2หน้า และหน้าแรกกลับโชว์ 1ข้อมูล หน้า2 กลับโชว์3ข้อมูล

css-page-break

Code (PHP)
<?
include('../Connections/conndb.php');
//include 'ไฟล์ส่วนหัว';
echo '
<table>
  <tr>
    <td align="left"><table width="750" border="0" align="left" cellpadding="0" cellspacing="0" style="border-collapse:collapse;border-top:5px double #000;">
        <tr>
        
          <td width="200" class="headerTitle01"    align="center" valign="middle">ชื่อลูกค้า<br />
            Customer Name</td>
          <td width="50" class="headerTitle01"    align="center" valign="middle">วันที่นัดหมาย<br />
            Appointment Date</td>
          <td width="80" class="headerTitle01"   align="center" valign="middle">สถานที่<br />
            Place</td>
          <td width="200" class="headerTitle01"    align="center" valign="middle">รายละเอียด<br />
            Description</td>
          <td width="150" align="center" valign="bottom" class="headerTitle01">การตอบรับของลูกค้า<br />
            Feedback</td>
          <td width="50" class="headerTitle01_r"   align="center" valign="middle">หมายเหตุ<br />
            Remarks</td>
        </tr>
		</table>
';

	$sql = "SELECT * FROM activity,sales,customer,contactcus where activity.sid=sales.sid and activity.cid=customer.cid and activity.contact=contactcus.id_contact AND sales.username='yai' and activity.astatus!='0'"; // เลือก ตารางที่เราเก็บข้อมูล
	
$result = mysql_query($sql);

///////// การวนลูปโดยใช้ while loop จากฐานข้อมูล
while($row = mysql_fetch_array($result)){

////// การวนลูปโดยใช้ for
//for($i=1;$i<20;$i++){
	
	$page_print = $row['aid'];   /////รับค่าจากค่าที่วนลูป โดย for loop /// $array['id']; /// ใช้คำสั่งนี้เมื่อรับค่าจาก while loop
	$data_show = 5;////////////// จำนวนที่จะสั่งปริ้นต่อหน้า
		
	if($page_print%$data_show==0) 
{
	
	echo 'ไฟล์ส่วนท้าย';

	echo "<div style='page-break-after: always'>";
	
	echo "</div>";
	
	//include'ไฟล์ส่วนหัว';
echo '
<table>
  <tr>
    <td align="left"><table width="750" border="0" align="left" cellpadding="0" cellspacing="0" style="border-collapse:collapse;border-top:5px double #000;">
        <tr>
          
          <td width="200" class="headerTitle01"    align="center" valign="middle">ชื่อลูกค้า<br />
            Customer Name</td>
          <td width="50" class="headerTitle01"    align="center" valign="middle">วันที่นัดหมาย<br />
            Appointment Date</td>
          <td width="80" class="headerTitle01"   align="center" valign="middle">สถานที่<br />
            Place</td>
          <td width="200" class="headerTitle01"    align="center" valign="middle">รายละเอียด<br />
            Description</td>
          <td width="150" align="center" valign="bottom" class="headerTitle01">การตอบรับของลูกค้า<br />
            Feedback</td>
          <td width="50" class="headerTitle01_r"   align="center" valign="middle">หมายเหตุ<br />
            Remarks</td>
        </tr>
		</table>
';
}

	//echo "ข้อมูลที่จะแสดงทั้งหมด";
	//echo $array['data'];
?>
<table>
<tr valign="top">
         
          <td align="left" class="left_bottom"><? echo $row['cname'];?></td>
          <td align="left" class="left_bottom"><? if ($row['dateStart'] !='0000-00-00 00:00:00') { 
		$dateStart=$row['dateStart'];
		list($date, $time) = explode(" ", $dateStart);
		list($Year, $month, $day) = explode("-", $date);
		list($hours, $mins, $sec) = explode(":", $time);
        $dateStart = (int)$day."/".(int)$month."/".($Year+543);
	  
		  echo $dateStart;} else { echo "<center><font color='red'>ไม่ระบุเวลา</font></center>";}?></td>
          <td align="left" class="left_bottom"><? echo $row['location'];?></td>
          <td align="left" class="left_bottom">
		  <? if($row['atype']=='VS01') { echo "ประชุมกับลูกค้า - "; }
		else if($row['atype']=='VS02') { echo "นำเสนอข้อมูล - "; }
		else if($row['atype']=='VS03') { echo "Site Survey - "; }
		else if($row['atype']=='VS04') { echo "แวะเยี่ยม สร้าง Relation - "; }
		else if($row['atype']=='VS05') { echo "ตามรายละเอียดเพิ่มเติมของลูกค้า - "; }
		else if($row['atype']=='VS06') { echo "ตามงาน  / ตาม PO / ตามสัญญา - "; }
		else if($row['atype']=='VS07') { echo "ตามหนี้ / ตามเอกสารการเงิน - "; }
		else if($row['atype']=='VS08') { echo "Customer Database - "; }
		else if($row['atype']=='VS09') { echo "On Job Training - "; }
		else { echo ""; } ?>
		  <? echo $row['adetail'];?></td>
          
          <td align="left" class="left_bottom"><? echo $row['feedback'];?></td>
          <td align="left" class="left_right_bottom"><? echo $row['probability'];?>/
          <?php if($row['probability']=='10') { echo "รวบรวมข้อมูล";} 
				else if($row['probability']=='20') { echo "นำเสนอเบื้องต้น";}
				else if($row['probability']=='30') { echo "เก็บรายละเอียดหน้างาน";}
				else if($row['probability']=='40') { echo "ขอราคา";}
				else if($row['probability']=='50') { echo "เสนอราคา";}
				else if($row['probability']=='65') { echo "ผ่านการพิจารณาเบื้องต้น";}
				else if($row['probability']=='80') { echo "ผ่านการต่อรองเพื่อการตัดสินใจ";}
				else if($row['probability']=='95') { echo "ผ่านการพิจารณา รอใบสั่งซื้อ";}
				else if($row['probability']=='100') { echo "ได้รับใบสั่งซื้อ";}
				else { echo "";}

		?></td>
        </tr>
		</table>
		<?
}

////จบการวนลูปข้อมูล

//include'ไฟล์ส่วนท้าย';
?>




Tag : PHP, MySQL, HTML/CSS









ประวัติการแก้ไข
2014-11-25 16:32:30
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-11-25 16:29:59 By : bsaranya View : 4875 Reply : 7
 

 

No. 1



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

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

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

Code (PHP)
if($no % 10 == 0)
{
  echo "<div style='page-break-after: always'>";
}


ประมาณนี้ครับ $no คือ ลำดับของ Row ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 08:58:46 By : mr.win
 


 

No. 2



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



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


จะใส page-break เมื่อ ครบกำหนด และ ไมใส่หน้าสุดท้าย (หน้าสุดท้ายไม่ต้องใส่ เพื่อจะได้ไม่พิมพ์ หน้าเปล่า)


ปล. อีกนิด เอา ตรวจสอบ echo ไฟล์ ส่วนท้าย ไปไว้ ท้าย loop ครับ เอามาไว้ต้น loop มันก็ เปลี่ยนหน้า ก่อนพิมพ์นะครับ

และควรจะแยกกัน ระหว่าง ส่วนหัวกับส่วนท้าย

Code (PHP)
//ส่วนหัว
if( ($no % 10)==1){
     echo ส่วนหัว:
}
echo เนื้องาน
// ส่วนท้าย
if( ($no % 10)==0 && (ceil($no/10)<$all_page)  )
{
  echo "<div style='page-break-after: always'>";
}



ประวัติการแก้ไข
2014-11-26 09:27:35
2014-11-26 09:30:45
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 09:14:09 By : Chaidhanan
 

 

No. 3



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

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

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


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 09:22:18 By : mr.win
 


 

No. 4



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



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

ลองทำตามแบบด้านบนค่ะ
Code (PHP)
<?
include('../Connections/conndb.php');
//ส่วนหัว
$sql = "SELECT * FROM customer";
$result = mysql_query($sql);
$no = mysql_num_rows($result); 


if( ($no % 10)==1){
     echo "ส่วนหัว:";
}
while($row = mysql_fetch_array($result)){
echo $row['cname']."<br/>";
}
// ส่วนท้าย
if( ($no % 10)==0 && (ceil($no/10)<$all_page)  )
{
  echo "<div style='page-break-after: always'></div>";
}
  echo "ส่วนท้าย:";
?>


ส่วนหัว ไม่ขึ้นค่ะ
แล้วก็ไม่ขึ้นหน้าละ 10ด้วยค่ะ
$all_page คือ ?
หนูแนบรูปมาให้ดูด้วยค่ะ
page-break
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 11:28:21 By : bsaranya
 


 

No. 5



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

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

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

ประมาณนี้ครับ

Code
<? include('../Connections/conndb.php'); //ส่วนหัว $sql = "SELECT * FROM customer"; $result = mysql_query($sql); $no = 1; while($row = mysql_fetch_array($result)){ if( ($no % 10)==1){ echo "ส่วนหัว:"; } echo $row['cname']."<br/>"; // ส่วนท้าย if( ($no % 10)==0 && (ceil($no/10)<$all_page) ) { echo "<div style='page-break-after: always'></div>"; } echo "ส่วนท้าย:"; $no++; } ?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 11:32:09 By : mr.win
 


 

No. 6



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



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


ตัวอย่างลองเทสต์
Code (PHP)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>

<body>
<?php

//$no = mysql_num_rows($result); 
// สมมุติ จำนวน reccord = 15
$all_rec = 15;
$all_page= ceil($all_rec/ 10);
for($no=1; $no<=$all_rec; $no++){
	if( ($no % 10)==1){
		echo "ส่วนหัว:<br>";
	}
	// ส่วนเนื้อหา
	echo $no, ") เนื้อหา <br>";

	// ส่วนท้าย
	if( ($no % 10)==0 && (ceil($no/10)<$all_page)  ){
		echo "ส่วนท้าย ก่อน page-break นะครับ";
  		echo "<div style='page-break-after: always'></div>";
	}
}
if(($all_rec % 10)>0)  echo "ส่วนท้าย:";
 
?>
</body>
</html>



ประวัติการแก้ไข
2014-11-26 11:47:06
2014-11-26 11:50:39
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 11:46:19 By : Chaidhanan
 


 

No. 7



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



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

ได้แล้ว ขอบคุณ พี่ TC Admin กับ พี่Chaidhanan มากค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-26 14:14:06 By : bsaranya
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : css page-break-after กับการแบ่งหน้าที่ดึงข้อมูลมาจาก mysql
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
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 อัตราราคา คลิกที่นี่