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

HOME > PHP > PHP Forum > ขอความกรุณาช่วยดูโค้ดตารางสอนหน่อยครับ(ต้องการเชื่อมต่อฐานข้อมูลครับ)


[PHP] ขอความกรุณาช่วยดูโค้ดตารางสอนหน่อยครับ(ต้องการเชื่อมต่อฐานข้อมูลครับ)

 
Topic : 105422



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



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



คือว่าความประสงค์ของผมคืืออยากให้ช่วย เขียนการเชื่อมต่อฐานข้อมูลของโค้ดนี้หน่อยหน่ะครับ

(แล้วถ้าผมต้องการให้แสดงออกมาเพียง 1 ตารางที่เลือกทำได้ไหมครับ ผมเพิ่งฝึกเรียนรู้ครับ) ขอบพระคุณครับ

ขอขอบคุณที่มา : http://www.sunzan-design.com/2013/08/php-labs-booking-room-with-mysql.html

Code (PHP)
001.<?php
002./*------------------------------------------------------------------------------
003.** File : booking_room.php
004.** Description : การดึงข้อมูลการจอง มาแสดงในรูปแบบตาราง โดยมีการระบายสีในช่วงเวลาที่มีการจองไปแล้ว
005.** Author : Songchai Saetern
006.** Email: sunzandesign@gmail.com
007.** Homepage : www.sunzan-design.com
008.** Create : 2013-08-03
009.** Modify : 2013-08-03
010.**
011.** Rev History
012.**------------------------------------------------------------------------------
013.*/
014. 
015.     
016. 
017.    //-- กำหนดช่องเวลา แบบตายตัว
018.    $timeArr = array("07:00", "08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00",
019.                "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00"
020.                );
021. 
022.    //-- ตารางห้องประชุม
023.    //-- ส่วนที่ดึงมาจากฐานข้อมูล ในลูป while ซึ่งมีจำนวนห้องประชุมทั้งหมด 5 ห้อง
024.    $room = array();
025.    $room[] = array('id' => 1, 'name' => 'ห้องประชุม 1');
026.    $room[] = array('id' => 2, 'name' => 'ห้องประชุม 2');
027.    $room[] = array('id' => 3, 'name' => 'ห้องประชุม 3');
028.    $room[] = array('id' => 4, 'name' => 'ห้องประชุม 4');
029.    $room[] = array('id' => 5, 'name' => 'ห้องประชุม 5');
030.    //-- สิ้นสุดการจัดรูปแบบข้อมูลในลูป while
031.     
032.     
033.    //-- ตารางการจอง
034.    //-- ส่วนที่ดึงมาจากฐานข้อมูล ในลูป while
035.    //$array[{ไอดีห้องประชุม}][] = array('start_time' => '', 'end_time' => '', 'title' => '');
036.    $booking = array();
037.    $booking[1][] = array('start_time' => '09:00', 'end_time' => '12:30', 'title' => 'อบรม เทคโนโลยีสารสนเทศ และการสื่อสาร');
038.    $booking[1][] = array('start_time' => '13:35', 'end_time' => '15:20', 'title' => 'วาระที่ 1');
039.    $booking[2][] = array('start_time' => '11:45', 'end_time' => '16:10', 'title' => 'หัวข้อพิเศษเกี่ยวกับวิทยาการคอมพิวเตอร์');
040.    $booking[3][] = array('start_time' => '12:15', 'end_time' => '14:30', 'title' => 'สรุปโครงการ');
041.    $booking[4][] = array('start_time' => '15:00', 'end_time' => '17:00', 'title' => 'อบรม ระบบฐานข้อมูล');
042.    $booking[5][] = array('start_time' => '08:30', 'end_time' => '12:00', 'title' => 'จัดกิจกรรมสัมมนาวิชาการ');
043.    //-- สิ้นสุดการจัดรูปแบบข้อมูลในลูป while
044.         
045.    /*
046.    ** คำนวณหาตำแหน่งซ้ายสุด และความกว้างที่จะแสดงในช่องเวลา
047.    ** ข้อกำหนดของการสร้างจำนวนคอลัมน์ เพื่อแสดงแถบเวลา
048.    ** 1 คอลัมน์ = ชั่วโมง, จะมีขนาดกว้าง 60px
049.    ** ต้องหาจุดเริ่มต้น css left
050.    ** ต้องหาความกว้าง css width
051.    ** เวลาเริ่มต้นคือ 7.00 ดังนั้นต้องลบ 7x60(420 ออกทุกครั้งที่หา left) * แต่เมื่อมีช่องก่อนหน้า ให้เพิ่มจำนวนที่ต้องลบออกมากขึ้น
052.    ** ความกว้าง ให้ใช้ค่า end_time - start_time
053.    */
054.    Class SetTimeObject
055.    {
056.        public $startPx;
057.        public $diff;
058.        public $leftMin = 0;
059.         
060.        public function getWidthPos($startTime, $endTime){
061.            $s = explode(":", $startTime);
062.            $this->startPx = ((int)$s[0] * 60) + (int)$s[1];
063.            $sTime = (float)str_replace(":", ".", $startTime);
064.            $eTime = (float)str_replace(":", ".", $endTime);
065.            $this->diff = ($eTime - $sTime);
066.            $l = ($this->startPx - 420) - $this->leftMin;
067.            $w = ($this->diff * 60);
068.            return array('left' => $l, 'width' => $w);
069.        }
070.    }
071.     
072.     
073.     
074.    //ใช้ทดสอบการคำนวณค่าว่าได้ตรงตามต้องการหรือไม่
075.    Class Test_SetTimeObject extends SetTimeObject
076.    {  
077.        public static function TestGetWidthPos(){
078.            $startTime = "09:00";
079.            $endTime = "12:00";
080.            $obj = new SetTimeObject;
081.            $arr = $obj->getWidthPos($startTime, $endTime);
082.            echo "<hr><br><b>ทดสอบการคำนวณตำแหน่ง และความกว้าง</b>";
083.            echo "<br>เวลาที่ส่งไป  $startTime, $endTime";
084.            echo "<br>ค่าที่จะต้องได้ออกมา left : 120, width : 180";
085.            echo "<br><font color='green'><b>ผลลัพธ์ที่ได้ left : $arr[left], width : $arr[width]</b></font>";
086.            echo "<br><br><b>ตรวจสอบค่าต่างๆ </b>";
087.            echo "<br>ตำแหน่งด้านซ้าย : 180 คำนวณจากสูตรได้  $obj->startPx ";
088.            echo "<br>ความกว้าง จำนวนช่อง x 60 : 3x60 = 180 คำนวณจากสูตรได้  <font color='green'><b>($obj->diff x 60) = $arr[width]</b></font>";
089.            echo "<br><br><hr>";
090.        }
091.    }
092.     
093.?>
094.<!doctype html>
095.<html lang="en">
096.<head>
097.  <meta charset="utf-8" />
098.  <title>ตารางแสดงช่วงเวลาการใช้ห้องประชุม - www.sunzan-design.com</title>
099.  <style type="text/css">
100.    #snaptarget {
101.        height: 50px;
102.        background: url("http://code.jquery.com/ui/1.10.3/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png") repeat-x scroll 50% 50% #CCCCCC;
103.    }
104.    td.room{
105.        width : 100px;
106.        text-align : right;
107.        font-weight : bold;
108.        background: url("http://code.jquery.com/ui/1.10.3/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png") repeat-x scroll 50% 50% #CCCCCC;
109.    }
110.    .td_time{ height : 20px; }
111.    .td_time div{
112.        float : left;
113.        width : 60px;
114.        border-right : 1px solid #1AEB00;
115.    }
116.    .draggable2{
117.        background: #C3FF7D;
118.        border: 1px solid #AAAAAA;
119.        color: #222222;
120.        float : left;
121.        height : 44px;
122.        line-height : 14px;
123.        padding : 2px; 
124.        cursor : pointer;
125.        overflow : hidden;
126.        text-align : center;
127.        font-weight : 100;
128.        position : relative;
129.    }
130.  </style>
131.</head>
132.<body>
133.<?php
134. 
135. 
136.     
137. 
138.    $objTime = new SetTimeObject;
139.     
140.    echo '<table border="1" width="1095">';
141.    foreach($room as $row){
142.        echo '<tr>';
143.        echo '<td class="room">'.$row['name'].'</td>';
144.        echo '<td>
145.                <div class="td_time"><div>'. implode("</div><div>", $timeArr) .'</div><div style="clear:both"></div></div>
146.                <div id="snaptarget" class="ui-widget-header">';
147.        if(isset($booking[$row['id']])){
148.            $objTime->leftMin = 0;
149.            foreach($booking[$row['id']] as $bookData){
150.                $arr = $objTime->getWidthPos($bookData['start_time'], $bookData['end_time']);
151.                $left = $arr['left'];
152.                $width = $arr['width'];
153.                $objTime->leftMin += $arr['width'];
154.                echo '<div class="draggable2" style="left: '.$left.'px;width: '.$width.'px">
155.                      '. $bookData['title']. ' <br/>( '. $bookData['start_time'] .'-'.$bookData['end_time'] .')
156.                    </div>';
157.            }
158.        }
159.        echo '  </div>
160.            </td>';
161.        echo '</tr>';
162.    }
163.    echo ' </table>';
164.    Test_SetTimeObject::TestGetWidthPos();
165. ?>
166. 
167.<br style="clear: both;" />
168.</body>
169.</html>




Tag : PHP, MySQL, Ms SQL Server 2008, HTML/CSS, JavaScript, jQuery

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-02-04 06:53:09 By : NeungPG View : 971 Reply : 4
 

 

No. 1



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

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

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

โครงสร้างตาราง ?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-05 10:16:43 By : mr.win
 

 

No. 2



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



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


นี่ฐานข้อมูลครับผม

http://www.mediafire.com/download/zc2tyowt2e9t316/book_room.sql.zip
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-05 20:37:25 By : NeungPG
 

 

No. 3



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



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


พอจะมีใครแนะนำได้ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-06 17:31:53 By : NeungPG
 

 

No. 4



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

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

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



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-02-06 23:29:58 By : weaned
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
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 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





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