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 > ถ้าเรา while ข้อมูลออกมาได้ 10 20 30 เราจะนำข้อมูลก่อนมาหน้ามาโชว์ยังไง



 

ถ้าเรา while ข้อมูลออกมาได้ 10 20 30 เราจะนำข้อมูลก่อนมาหน้ามาโชว์ยังไง

 



Topic : 114840



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



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




while loop

Result

ID INIT
1 10
2 20
3 30

อยากให้ 20 โชว์ข้อมูลของ 10 พอจะมีทางไหมครับ

พอดีจะทำ เกี่ยวกับค่าไฟเล็กน้อยอ่ะครับ มิตเตอร์มันนับเลขไปเรื่อย ๆ เดือนนี้ วิ่ง 0000600 เดือนหน้าวิ่งไป 0001050 แบบนี้แล้วจะเอามาลบกัน เพื่อหาค่าไฟอ่ะครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-03-03 23:02:39 By : oreojung View : 779 Reply : 17
 

 

No. 1

Guest


ทำใน loop เลยก็ได้ครับ ประมาณนี้
Code (PHP)
        $arr_test=array(3,33,333,3333,33333);
	$old_val=0;
	foreach($arr_test as $idx=>$new_val){
		echo"<br>data:$new_val==>diff===>".($new_val-$old_val);
		$old_val=$new_val;
	}







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 00:05:55 By : ผ่านมา
 


 

No. 2



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



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


มีแบบ sql ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 00:17:59 By : oreojung
 

 

No. 3

Guest


น่าจะประมาณนี้ครับ
Code (SQL)
select id,init,
init-(select max(init) as old_val from tb_name as tmp_tb where tmp_tb.init<tb_name.init) as diff
from tb_name

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 00:27:25 By : ผ่านมา
 


 

No. 4



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



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


Code
$SQLDetail = "SELECT * FROM bill WHERE id = $id ORDER BY id ASC";
mysql_query("SET NAMES TIS620");
$QueryDetail = mysql_query($SQLDetail) or die ("Error Query [".$SQLDetail."]");
?>
<div align="center">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr>
		<td align="center" width="25%" height="25">ประจำเดือน</td>
		<td align="center" width="20%" height="25">ปี พ.ศ.</td>
		<td align="center" width="30%" height="25">จำนวน (หน่วย)</td>
		<td align="center" width="25%" height="25">รวมเป็นเงิน</td>
	</tr>
	<?php
	while($GetDetail = mysql_fetch_array($QueryDetail))
	{
	?>
	<tr>
		<td align="center" height="20"><?php if ($GetDetail['month'] == 1) { echo "มกราคม"; }
		elseif ($GetDetail['month'] == 2) { echo "กุมภาพันธ์"; }
		elseif ($GetDetail['month'] == 3) { echo "มีนาคม"; }
		elseif ($GetDetail['month'] == 4) { echo "เมษายน"; }
		elseif ($GetDetail['month'] == 5) { echo "พฤษภาคม"; }
		elseif ($GetDetail['month'] == 6) { echo "มิถุนายน"; }
		elseif ($GetDetail['month'] == 7) { echo "กรกฎาคม"; }
		elseif ($GetDetail['month'] == 8) { echo "สิงหาคม"; }
		elseif ($GetDetail['month'] == 9) { echo "กันยายน"; }
		elseif ($GetDetail['month'] == 10) { echo "ตุลาคม"; }
		elseif ($GetDetail['month'] == 11) { echo "พฤศจิกายน"; }
		elseif ($GetDetail['month'] == 12) { echo "ธันวาคม"; }
		?></td>
		<td align="center" height="20"><?php echo $GetDetail["year"] + 543 ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit"] ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit"] * 7 ?> บาท</td>
	</tr>
	<?php } ?>


ช่วยหน่อยครับ งงมาก 555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 01:02:12 By : oreojung
 


 

No. 5



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



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


Code (SQL)
select  
tb1.month old_month, tb1.init as old_unit, 
tb2.month new_month, tb2.init as new_unit, 
(tb2.init - tb1.init) as unit
from bill as tb1 
left join bill as tb2
on tb1.month = (tb2.month-1)
where tb2.month is not null 
order by tb2.month


ข้อสำคัญของโค๊ดชุดนี้ ต้องมีรายการค่าไฟ ทุกเดือน เรียงลำดับกัน ถ้าข้าม ข้อมูลจะขาดหายไป


ประวัติการแก้ไข
2015-03-04 07:53:40
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 07:53:12 By : Chaidhanan
 


 

No. 6



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



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


Code
$transaction_id = $_GET['id'];

$SQLDetail = "select  
tb1.month old_month, tb1.unit as old_unit, 
tb2.month new_month, tb2.unit as new_unit, 
(tb2.unit - tb1.unit) as unit,
tb2.month as month,
tb2.year as year,
tb2.unit as unit_elec
from electricity_bill as tb1 
left join electricity_bill as tb2
on tb1.month = (tb2.month-1)
where tb2.month is not null AND tb2.transaction_id = $transaction_id
order by tb1.id";

$QueryDetail = mysql_query($SQLDetail) or die ("Error Query [".$SQLDetail."]");

?>
<div align="center">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr>
		<td align="center" width="25%" height="25">ประจำเดือน</td>
		<td align="center" width="20%" height="25">ปี พ.ศ.</td>
		<td align="center" width="30%" height="25">จำนวน (หน่วย)</td>
		<td align="center" width="25%" height="25">รวมเป็นเงิน</td>
	</tr>
	<?php
	while($GetDetail = mysql_fetch_array($QueryDetail))
	{
	?>
	<tr>
		<td align="center" height="20"><?php if ($GetDetail['month'] == 1) { echo "มกราคม"; }
		elseif ($GetDetail['month'] == 2) { echo "กุมภาพันธ์"; }
		elseif ($GetDetail['month'] == 3) { echo "มีนาคม"; }
		elseif ($GetDetail['month'] == 4) { echo "เมษายน"; }
		elseif ($GetDetail['month'] == 5) { echo "พฤษภาคม"; }
		elseif ($GetDetail['month'] == 6) { echo "มิถุนายน"; }
		elseif ($GetDetail['month'] == 7) { echo "กรกฎาคม"; }
		elseif ($GetDetail['month'] == 8) { echo "สิงหาคม"; }
		elseif ($GetDetail['month'] == 9) { echo "กันยายน"; }
		elseif ($GetDetail['month'] == 10) { echo "ตุลาคม"; }
		elseif ($GetDetail['month'] == 11) { echo "พฤศจิกายน"; }
		elseif ($GetDetail['month'] == 12) { echo "ธันวาคม"; }
		?></td>
		<td align="center" height="20"><?php echo $GetDetail["year"] + 543 ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit_elec"] ?> = <?php echo $GetDetail["unit"] ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit"] * $Information["electricity_bill"] ?> บาท</td>
	</tr>
	<?php } ?>
</table>
</div>


Output
ประจำเดือน ปี พ.ศ. จำนวน (หน่วย) รวมเป็นเงิน
มกราคม 2558 0010 = 10 70 บาท
กุมภาพันธ์ 2558 0053 = 43 301 บาท
มกราคม 2558 0010 = 10 70 บาท
กุมภาพันธ์ 2558 0053 = 27 189 บาท

SQL
id Ascending transaction_id room month year unit
1 1 101 0 2015 0000
2 1 101 1 2015 0010
3 2 102 0 2015 0000
4 2 102 1 2015 0026
5 1 101 2 2015 0053
6 2 102 2 2015 0032


ประวัติการแก้ไข
2015-03-04 18:59:34
2015-03-04 19:01:50
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 18:58:10 By : oreojung
 


 

No. 7



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



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


ตัวอย่างที่ผมให้ไปต้องไปประยุกต์กับข้อมูลจริงด้วยนะครับ

Code (SQL)
select  
     tb2.year, tb2.month, 
     tb1,init as old_init, tb2.init, 
     tb2.init - tb1.init as unit_use
from bill tb2 
left join bill tb1
on (tb2.year * 12 + tb2.month) = (tb1.year * 12 + tb1.month +1)
where tb2.year = ปีที่ต้องการ

ตรง where ก็เปรียบเที่ยบ จากสิ่งที่ต้องการจริง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 19:55:14 By : Chaidhanan
 


 

No. 8



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



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


มันแสดงผลแบบนี้อ่ะครับ เลยมึน ๆ งง ๆ เลยอ่ะครับ


Output

fasd

SQL

dasdsa

Code
<?php
$transaction_id = $_GET['id'];
$SQLDetail = "SELECT 
tb2.year, tb2.month, 
tb1.unit AS old_unit, tb2.unit, 
tb2.unit - tb1.unit AS unit_use
FROM electricity_bill tb2 
LEFT JOIN electricity_bill tb1
ON (tb2.year * 12 + tb2.month) = (tb1.year * 12 + tb1.month +1)
WHERE tb2.transaction_id = $transaction_id";
mysql_query("SET NAMES TIS620");
$QueryDetail = mysql_query($SQLDetail) or die ("Error Query [".$SQLDetail."]");
?>
<div align="center">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr>
		<td align="center" width="25%" height="25">ประจำเดือน</td>
		<td align="center" width="20%" height="25">ปี พ.ศ.</td>
		<td align="center" width="30%" height="25">จำนวน (หน่วย)</td>
		<td align="center" width="25%" height="25">รวมเป็นเงิน</td>
	</tr>
	<?php
	while($GetDetail = mysql_fetch_array($QueryDetail))
	{
	?>
	<tr>
		<td align="center" height="20"><?php echo $GetDetail['month'] ?></td>
		<td align="center" height="20"><?php echo $GetDetail["year"] + 543 ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit"] ?></td>
		<td align="center" height="20"><?php echo $GetDetail["unit"] * 7 ?> บาท</td>
	</tr>
	<?php } ?>
</table>
</div>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-04 22:28:59 By : oreojung
 


 

No. 9



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



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


Code (SQL)
SELECT 
   tb2.room, tb2.year, tb2.month, 
   coalesce(tb1.unit,0) AS old_unit, tb2.unit, 
   tb2.unit - coalesce(tb1.unit,0) AS unit_use
FROM electricity_bill tb2 
LEFT JOIN electricity_bill tb1
ON (tb2.year * 12 + tb2.month) = (tb1.year * 12 + tb1.month +1)
and tb2.room=tb1.room
WHERE tb2.transaction_id = 1
order by tb2.year, tb2,month


ลืม and tb2.room=tb1.room


ประวัติการแก้ไข
2015-03-05 08:43:42
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-05 08:42:37 By : Chaidhanan
 


 

No. 10



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



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


ผมอยากดึงข้อมูล เดือนล่าสุด กับเดือนก่อน มาแสดงอ่ะครับ

แสดงตรงในรูปอ่ะครับ แล้วนำหน่วยที่คำนวนได้ไป คำนวนกับราคาต่อหน่วยอ่ะครับ

ดเดกเ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 03:12:22 By : oreojung
 


 

No. 11



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



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


Code
SELECT tb2.room, tb2.year, tb2.month, coalesce(tb1.unit,0) AS old_unit, tb2.unit, tb2.unit - coalesce(tb1.unit,0) AS unit_use FROM electricity_bill tb2 LEFT JOIN electricity_bill tb1 ON (tb2.year * 12 + tb2.month) = (tb1.year * 12 + tb1.month +1) and tb2.room=tb1.room WHERE tb2.transaction_id = 1 order by tb2.year desc, tb2.month desc limit 1

เอาแค่เดือนสุดท้าย 1 รายการ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 03:18:02 By : Chaidhanan
 


 

No. 12



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



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


ถ้าเอาเดือนก่อนสุดท้าย มาโชว์ด้วยได้ไหมครับ แบบไม่ใช้ limit 2 อ่ะครับ เป็นแบบแทนตัวแปรอ่ะครับ


ประวัติการแก้ไข
2015-03-21 03:34:51
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 03:32:08 By : oreojung
 


 

No. 13



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



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


เอ งงครับ แล้วมันต่างกันอย่างไงครับ แถมยากกว่าด้วย 555


แบบกำหนดเดือน

WHERE tb2.transaction_id = 1 and concat( year, month) <= '$year$month'


ประวัติการแก้ไข
2015-03-21 04:20:23
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 04:17:21 By : Chaidhanan
 


 

No. 14



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



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


พอดี จะให้มันโชว์ในบิลอ่ะครับ

New กับ Old

0084 - 0054 ประมาณนี้อ่ะครับ ลองใช้ Limit 2 ตัว Unit use มันติดมาด้วย ทั้ง 2 เดือน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 04:29:53 By : oreojung
 


 

No. 15



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



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


อ้อ เวลาแสดงผล ช่องเดือนเก่าก็ไม่ต้องใส่ตัวแปรลงไป ก็ได้นะครับ เราเป็นคนกำหนดการแสดงเองนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 04:33:11 By : Chaidhanan
 


 

No. 16



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



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


มีตัวอย่างโค้ดไหมครับ งงกับการโชว์เดือนเก่ามา 555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 04:37:21 By : oreojung
 


 

No. 17



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



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


เอาโค๊ดที่ทำมาดูดีกว่าครับ (บอกตรงๆ ครับ ขีเกียจคิด 5555)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-21 04:41:24 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถ้าเรา while ข้อมูลออกมาได้ 10 20 30 เราจะนำข้อมูลก่อนมาหน้ามาโชว์ยังไง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่