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 > php ถ้าต้องการให้ข้อมูลใน database ออกเปนตารางเรียน จะมีโค้ดเขียนออกมาได้ยังไงบ้างค่ะ



 

php ถ้าต้องการให้ข้อมูลใน database ออกเปนตารางเรียน จะมีโค้ดเขียนออกมาได้ยังไงบ้างค่ะ

 



Topic : 115148



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



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




database ที่เก็บค่า
database

ตารางเรียนที่ต้องการ
tabledd



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-03-16 16:50:38 By : gungging302 View : 6346 Reply : 8
 

 

No. 1

Guest


ถ้าจะวนด้วย php เพื่อสร้างตาราง+จับข้อมูลใส่ พอทำได้ครับ แต่ไม่รู้จะทำถูกมั๊ย
รอคนเก่งๆมาช่วยดีกว่าาา






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-16 18:19:54 By : ไม่ทราบแหล่งที่มา
 


 

No. 2



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



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


ตัวอย่างสำหรับ หาตารางเรียนสำหรับคนๆ เดียว
สำหรับสี ถ้ามันผิดก็แก้เอาเองนะครับ
อีกอย่างไม่ได้เทสต์ครับ

Code (PHP)
<?php
$db=new mysqli( 'host', 'user', 'psw', 'dbname');
$student = 'YourStudent';
$sql = "select *, left( book_time_b, 2) st, left( book_time_e, 2) en from table where Name_surname = '$student' 
order by field(book_date_b,'mon','tue','wed','thu','fri','sat','sun'), book_time_b";
$rs=$db->query($sql) or die ( $sql . "<br>" . $db->error );
$cur_day=''; $cur_hour=''; $tr='';
$day_config = array(
'mon'=>array('yellow', 'จันทร์' ),
'tue'=>array('pink', 'อังคาร' ),
'wed'=>array('green', 'พุธ' ),
'thu'=>array('orange', 'พฤหัสบดี' ),
'fri'=>array('skyblue', 'ศุกร์' ),
'sat'=>array('violet', 'เสาร์' ),
'sun'=>array('red', 'อาทิตย์' ),
);
while( $ro = $rs->fetch_assoc()){
	$st = intval($ro['st']); $en=intval($ro['en']);
	if($ro['book_date_b']!=$cur_day){
		if($tr){
			if($cur_hour < 21 ){
				$tr.='<td colspan='.($12 - $cur_hour).' >&nbsp;</td>'; 
			}
		}
		$cur_day=$ro['book_date_b']; $cur_hour = 9;
		$tr .= ($tr? '</tr>' : '' ) . '<tr><td bgcolor="'.$day_config[$cur_day][0].'" >'.$day_config[$cur_day][1].'</td>'; 
	}
	if($cur_hour<$st){
		$tr.='<td colspan='.($st - $cur_hour).' >&nbsp;</td>'; 
	}
	$cur_hour=$en;
	$tr .= '<td '.(( $h = ($ro['en'] - $ro['st']) )>1 ? "colspan=$h" : '' ).' >'.$ro['id_type_room'] . '<br>' . $ro['sub_code'] . '</td>';
}
$tr .= '</tr>';
?>
<table border=1>
<tr><td colspan=14>..... Header ...</td></tr>
<?=$tr?>
</table>


ปล. ลืม เช็ค เวลาเริ่มต้น ลองคิดดูก่อนนะครับ มันวางตำแหน่ง ไม่ถูก
ปล. ครั้งที่ 2 แก้ไข ตำแหน่ง ระหว่างชม.แล้ว
ปล. ลืม เช็ค วันที่ไม่มีเรียน 5555 ลองดูตัวอย่าง เขียนตรวจสอบเอง นะครับ ไปกินข้าวก่อนล่ะ
ปล. ได้ order by field มาจากคุณ sakurai


ประวัติการแก้ไข
2015-03-16 19:04:26
2015-03-16 19:19:00
2015-03-16 19:21:11
2015-03-16 19:21:45
2015-03-16 19:34:50
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-16 19:01:58 By : Chaidhanan
 

 

No. 3



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



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


ปรับแก้ไขแล้ว แต่ต้องปรับ statement ให้ถุกต้อง
อ่าน comment ดูนะครับ
Code (PHP)
<?php
$db=new mysqli( 'localhost', 'test', 'test', 'test');
$student = 'YourStudent';
///////////////////////////////////////////////////////////////////////////////////////////
//   day config
$day_config = array(
	'mon'=>array('yellow', 'จันทร์', 1 ),
	'tue'=>array('pink', 'อังคาร', 2 ),
	'wed'=>array('green', 'พุธ', 3 ),
	'thu'=>array('orange', 'พฤหัสบดี', 4 ),
	'fri'=>array('skyblue', 'ศุกร์', 5 ),
	'sat'=>array('violet', 'เสาร์', 6 ),
	'sun'=>array('red', 'อาทิตย์', 7 ),
);
$day_week=array( '', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun' );
//////////////////////////////////////////////////////////////////////////////////////////
//  สวน statement สำหรับ ใช้กับ database จริง
/*
$sql = "select *, left( book_time_b, 2) st, left( book_time_e, 2) en 
from table where Name_surname = '$student' 
order by field(book_date_b,'mon','tue','wed','thu','fri','sat','sun'), book_time_b";
/*/
//////////////////////////////////////////////////////////////////////////////////////////
//   ส่วน statement สำหรับ ทดสอบ
$sql = "select * from (
	select 102 id_type_room, 'HNSS01' sub_code, 'wed' book_date_b, 9 st, 10 en union all
	select 111 , 'HNSS01' , 'tue' , 9 , 10 union all
	select 145 , 'HNSS01' , 'tue' , 19 , 21 union all
	select 123 , 'HNSS01' , 'wed' , 11 , 12 union all
	select 124 , 'HNSS01' , 'wed' , 13 , 15 union all
	select 122 , 'HNSS01' , 'fri' , 15 , 21 union all
	select 122 , 'HNSS01' , 'sat' , 9 , 10
) tb 
order by field(book_date_b,'mon','tue','wed','thu','fri','sat','sun'), st";
////////////////////////////////////////////////////////////////////////////////////////*/
//  ส่วนการสร้าง tr
$cur_day=0; $cur_hour=''; $tr='';
$rs=$db->query($sql) or die ( $sql . "<br>" . $db->error );
while( $ro = $rs->fetch_assoc()){
	$d=$ro['book_date_b']; $w = $day_config[$d][2]; $st = intval($ro['st']); $en=intval($ro['en']);
	if($w!=$cur_day){ // ตรวจสอบว่า เป็นวันใหม่ หรือไม่
		if($tr) // ถ้า tr มีความยาว แสดงว่าได้ถูกใส่ <TR> เปิดไว้ก่อนแล้ว ให้ ใส่ </TR>
			$tr .= ($cur_hour < 21 ? '<td colspan='.(21 - $cur_hour)." >&nbsp;</td>" : '') . '</tr>';
		$cur_day++;  //  วันที่เก่า +1
		for($cur_day; $cur_day<$w; $cur_day++){ 
			// ตรวจสอบวันที่เก่า กับวันที่ ใหม่ มี gab ช่่องว่างวันที่ ไม่มีชั่วโมงเรียนหรือไม่ 
			// โดยวนลูป วันที่เก่า ถึง วันที่ใหม่ แล้วแสดง บันทัดของวันที่ว่างนั้น
			$tr.='<tr height=55 >'.
						'<td align=center bgcolor="' . $day_config[$day_week[$cur_day]][0].'" >'.$day_config[$day_week[$cur_day]][1].'</td>'.
						'<td colspan=13>&nbsp;</td></tr>';
		}
		$cur_hour = 9; // เปลี่ยน ชั่วโมง เริ่มต้น
		$tr .= '<tr height=55 ><td align=center bgcolor="'.$day_config[$d][0].'" >'.$day_config[$d][1].'</td>'; 
	}
	if($cur_hour<$st) // ตรวจสอบ gab ชั่วโมงเริ่มต้น กับชั่วโมงปัจจุบันเพื่อนสร้าง td ชั่วโมงที่ว่าง
		$tr.='<td align=center colspan='.($st - $cur_hour)." >&nbsp;</td>"; 
	$cur_hour=$en; // เปลี่ยน ชั่วโมง เริ่มต้น เป็น เวลาสิ้นสุดการเรียน
	//  แสดงเวลาเรียน
	$tr .= '<td align=center '.( ($h = $en - $st)>1 ? "colspan=$h" : '' ).' >'.$ro['id_type_room'] . '<br>' . $ro['sub_code'] .'</td>';
}
if( $cur_hour<21) // ตรวจสอบ ชั่งโมงเรียนสุดท้าย น้อยกว่าเวลาปิดการสอน  21 น. หรือไม่ แล้วแสดง td ช่วงเวลาที่หายไป
	$tr.= '<td colspan='.(21 - $cur_hour)." >&nbsp;</td>";
$tr .= '</tr>'; // ปิด TR 
$cur_day++;
for($cur_day; $cur_day<8; $cur_day++){
	//ตรวจวัน ที่หายไป จาก วันที่เรียนวันสุดท้าย แล้วแสดง tr วันที่หายไป
	$tr.='<tr height=55 ><td align=center bgcolor="' . $day_config[$day_week[$cur_day]][0].'" >'.$day_config[$day_week[$cur_day]][1].'</td>'.
					'<td colspan=13>&nbsp;</td></tr>';
}
///////////////////////////////////////////////////////////////////////////////l
// ส่วน แสดงตารางเรียน
?>
<table border=1>
<tr>
	<th width=80 align=center>วัน \ เวลา</th>
	<th width=80 align=center>09:00 - 10:00</th>
	<th width=80 align=center>10:00 - 11:00</th>
	<th width=80 align=center>11:00 - 12:00</th>
	<th width=80 align=center>12:00 - 13:00</th>
	<th width=80 align=center>13:00 - 14:00</th>
	<th width=80 align=center>14:00 - 15:00</th>
	<th width=80 align=center>15:00 - 16:00</th>
	<th width=80 align=center>16:00 - 17:00</th>
	<th width=80 align=center>17:00 - 18:00</th>
	<th width=80 align=center>18:00 - 19:00</th>
	<th width=80 align=center>19:00 - 20:00</th>
	<th width=80 align=center>20:00 - 21:00</th>
</tr>
<?=$tr?>
</table>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 10:40:07 By : Chaidhanan
 


 

No. 4



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

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

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


ตอบความคิดเห็นที่ : 3 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-03-17 10:40:07
รายละเอียดของการตอบ ::
ยอดเยี่ยม... เจ๋งมากๆครับ พี่

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 11:23:33 By : sakuraei
 


 

No. 5



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-03-17 10:40:07
รายละเอียดของการตอบ ::
ขอบคุณน่ะค่ะ เด๋วหนูจะลองมาทำดูก่อนนะค่ะ _/\_

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 11:31:02 By : gungging302
 


 

No. 6



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

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

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


เคยถามไว้นานล่ะ.....
https://www.thaicreate.com/php/forum/080025.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 13:00:50 By : apisitp
 


 

No. 7

Guest


ไล่ค้นหัวข้อเก่าไปเรื่อยๆ เจอกระทู้นึง .... ใช่ย่อยน่ะเนี่ย
ท่านทำเนียนไปชมผู้อื่น แต่ท่านเองก็... อ่าน่ะ 55555+

https://www.thaicreate.com/php/forum/090757.html#34
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 14:15:52 By : ไม่ทราบแหล่งที่มา
 


 

No. 8



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

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

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


ตอบความคิดเห็นที่ : 7 เขียนโดย : ไม่ทราบแหล่งที่มา เมื่อวันที่ 2015-03-17 14:15:52
รายละเอียดของการตอบ ::
ชมหรือแอบเหน็บครับ ฟังแทม่งๆชอบกล
ช่วงนั้นเพิ่งหัดเขียน jquery ... กลับไปอ่าน รู้สึกตัวเองนิสัยไม่ค่อยดี ยังไงไม่รู้

ตามธรรมะ.. ท่านว่า เราวันนี้ ไม่ใช่จิตดวงเดียวกับ เราเมื่อวันวาน

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-03-17 16:25:55 By : sakuraei
 

   

ค้นหาข้อมูล


   
 

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