|
|
|
สอบถามเรื่องการใช้ select option แบบ function ให้วนลูปตารางได้ |
|
|
|
|
|
|
|
คือ ผมทำ select option แบบใช้ function แล้วทีนี้มันลูปมาแค่ข้อมูล ผมจะให้มันลูป <tr><td> ด้วยทำยังไงครับ
Code (PHP)
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<?php include('connect.php');
$sql =$db->query("select * from maid");
$row = $sql->fetchArray();
?>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<link rel="stylesheet" type="text/css" href="./bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="./bootstrap/css/styles.css">
<script src="./bootstrap/js/bootstrap.min.js"></script>
<script src="./bootstrap/js/jquery.min.js"></script>
<title>ตารางงานทำความสะอาดของแม่บ้านในวันหยุด</title>
</head>
<style>
.frmMain{
text-align:center;
}
.border0{
color: transparent;
text-shadow: 0 0 0 black;
}
.border0:focus{
outline: none !important;
}
.quote{
width:auto;
height:auto;
margin-left:50px;
}
</style>
<script language="JavaScript">
function resutName(iyear)
{
switch(iyear)
{
<?php
$strSQL = "SELECT id, date, place, request, mgroup, detail, getquest,year FROM maid where year='".$row['year']."'";
$objQuery = $db->query($strSQL);
while($objResult=$objQuery->fetchArray())
{
?>
case "<?php echo $objResult["year"];?>":
frmMain.date.value = "<?php echo $objResult["date"];?>";
frmMain.place.value = "<?php echo $objResult["place"];?>";
frmMain.request.value = "<?php echo $objResult["request"];?>";
frmMain.group.value = "<?php echo $objResult["mgroup"];?>";
frmMain.detail.value = "<?php echo $objResult["detail"];?>";
frmMain.getquest.value = "<?php echo $objResult["getquest"];?>";
break;
<?php
}
?>
default:
frmMain.date.value = "";
frmMain.place.value = "";
frmMain.request.value = "";
frmMain.group.value = "";
frmMain.detail.value = "";
frmMain.getquest.value = "";
}
}
</script>
<body>
<div class="text-center top">
<p>ตารางงานทำความสะอาดของแม่บ้านในวันหยุด</p>
</div>
<form method="post" name="frmMain" class="frmMain">
<select OnChange="resutName(this.value);">
<option>เดือนปี</option>
<?php
$strSQL = $db->query("SELECT distinct year FROM maid where year = '".$row['year']."'");
$rows = $db->query("SELECT COUNT(*) as count FROM maid");
$row = $rows->fetchArray();
$numRows = $row['count'];
if($numRows>0){
while($objResult = $strSQL->fetchArray()){
?>
<option value="<?php echo $objResult["year"];?>"><?php echo $objResult["year"];?></option>
<?php }}?>
</select><br><br>
<table border="1" class="" align="center">
<tr>
<th>วันที่</th>
<th>สถานที่</th>
<th>ชื่อผู้ขอ</th>
<th>ฝ่าย</th>
<th>รายละเอียด</th>
<th>ชื่อผู้รับงาน</th>
</tr>
<tr>
<td><input readonly type="text" name="date" type="text" value="" class="border0"></td>
<td><input readonly type="text" name="place" type="text" value="" class="border0"></td>
<td><input readonly type="text" name="request" type="text" value="" class="border0"></td>
<td><input readonly type="text" name="group" type="text" value="" class="border0"></td>
<td><input readonly type="text" name="detail" type="text" value="" class="border0"></td>
<td><input readonly type="text" name="getquest" type="text" value="" class="border0"></td>
</tr>
</table>
</form>
<div class="quote">
<p>หมายเหตุ<br>- ข้อมูลนี้ใช้เพื่อดูตารางคิวงานของแม่บ้านในวันหยุดเท่านั้น<br>- ผู้ที่ต้องการจองคิว กรุณาส่ง MEMO Xiqma ร้องขอมายังหน่วยงาน GA ล่วงหน้าอย่างหน่อย 1 สัปดาห์
<br>- ขอบเขตพื้นที่การทำความสะอาดตามเงื่อนไขสัญญา จะทำได้เฉาะห้องสำนักงานในส่วนต่างๆเท่านั้น ทั้งนี้จะไม่รวมงานทำความสะอาดในโรงงานผลิต</p>
</div>
</body>
</html>
Tag : PHP, HTML, CSS, JavaScript, Windows
|
ประวัติการแก้ไข 2019-08-29 14:32:22
|
|
|
|
|
Date :
2019-08-29 14:31:25 |
By :
phikanatekung |
View :
626 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมว่า ไป loop สร้าง select ใส่ parameter ไว้ซักตัวครับ แล้ว loop tr ตามปกติ td ไหนใช้ select ก็เอา parameter มาวาง
|
|
|
|
|
Date :
2019-08-29 14:39:16 |
By :
mongkon.k |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังไม่เข้าใจคำถาม แต่คิดว่า
หันไปใช้ datatable ของ bootstrap ดูก็ได้มั้งครับ
|
|
|
|
|
Date :
2019-08-29 14:42:54 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดูจากตาราง ข้อมูลรายปี ถ้าไม่เกิน 5000 รายการ ก็ใช้ datatable ดูครับ
มันจะจัดหน้าให้อัตตโนมัต แต่มันโหลดข้อมูลมาทีเดียวเลย ถ้าเป็นงาน หลังบ้านก็คงไม่มีปัญหาอะไร
คำค้น bootstrap datatable ไม่ยากหรอกครับ
และการค้นหา เบื้องต้นสำหรับมือใหม่ ก็จะหาจากทุกคอลัมน์
แต่ถ้าชำนาญแล้ว สามารถ แยกค้นหาเป็นรายคอลัมน์ ได้ ลองทำดูก่อนครับ
ตัวอย่างแบบง่ายๆ เลย แต่ลิงค์ต้องหาเองนะครับ
Code (PHP)
<?php
$db=new mysqli( ...... );
if($db->errno>0){ die($db->error); }
$sql='select ........';
$rs = $db->query($sql) or die( $db->error .'<br>' . $sql);
?>php
<!doctype html>
<html lang="en">
<head>
<link href="boostrap.css">
<script src="jquery3.x.js" ></script>
<script src="bootstrap4+.js"></script>
<script src="bootstrap-datable.js"></script>
</head>
<body>
<table>
<thead>
<tr><th>id</th><th>name</th></th>
</thead>
<tbody>
<?php while($ro=$rs->fetch_object()):?>
<tr><td><?=$ro->id></td><td><?=$ro->name?></td></tr>
<?php endwhile;?>
</tbody>
</table>
</body>
<script>
$(document).ready(()=>{
$(table).datatable();
});
</script>
</html>
|
|
|
|
|
Date :
2019-08-29 15:21:12 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|