 |
|
รบกวนปรึกษาว่า จะประยุกต์ใช้โค๊ดนี้ยังไงครับ
จะทำอย่างไรให้เวลากด check box ที่เลือก และ แสดง list menu ขึ้นมา และสามารถเก็บค่า checkbox และ list menu ที่เลือก ไปพร้อมกันได้
โดยที่เปลี่ยนหน้าแล้ว ข้อมูลที่เลือกยังคงอยู่ครับ
ขอบคุณล่วงหน้าครับ
Code (PHP)
<?php
error_reporting(0);
$link=mysql_connect("localhost","root","root")or die("Error Connect to Database"); // เชื่อมต่อ Server
mysql_select_db("project"); // ติดต่อฐานข้อมูล
mysql_query("set character set utf8"); // กำหนดค่า character set ที่จะใช้แสดงผล
?>
<?php
// ฟังก์ชั่นสำหรับการแบ่งหน้า NEW MODIFY
function page_navi($before_p,$plus_p,$total,$total_p,$chk_page){
global $urlquery_str;
$pPrev=$chk_page-1;
$pPrev=($pPrev>=0)?$pPrev:0;
$pNext=$chk_page+1;
$pNext=($pNext>=$total_p)?$total_p-1:$pNext;
$lt_page=$total_p-4;
if($chk_page>0){
echo "<a href='$urlquery_str"."pages=".intval($pPrev+1)."' class='naviPN'>Prev</a>";
}
if($total_p>=11){
if($chk_page>=4){
echo "<a $nClass href='$urlquery_str"."pages=1'>1</a><a class='SpaceC'>. . .</a>";
}
if($chk_page<4){
for($i=0;$i<$total_p;$i++){
$nClass=($chk_page==$i)?"class='selectPage'":"";
if($i<=4){
echo "<a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";
}
if($i==$total_p-1 ){
echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";
}
}
}
if($chk_page>=4 && $chk_page<$lt_page){
$st_page=$chk_page-3;
for($i=1;$i<=5;$i++){
$nClass=($chk_page==($st_page+$i))?"class='selectPage'":"";
echo "<a $nClass href='$urlquery_str"."pages=".intval($st_page+$i+1)."'>".intval($st_page+$i+1)."</a> ";
}
for($i=0;$i<$total_p;$i++){
if($i==$total_p-1 ){
$nClass=($chk_page==$i)?"class='selectPage'":"";
echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";
}
}
}
if($chk_page>=$lt_page){
for($i=0;$i<=4;$i++){
$nClass=($chk_page==($lt_page+$i-1))?"class='selectPage'":"";
echo "<a $nClass href='$urlquery_str"."pages=".intval($lt_page+$i)."'>".intval($lt_page+$i)."</a> ";
}
}
}else{
for($i=0;$i<$total_p;$i++){
$nClass=($chk_page==$i)?"class='selectPage'":"";
echo "<a href='$urlquery_str"."pages=".intval($i+1)."' $nClass >".intval($i+1)."</a> ";
}
}
if($chk_page<$total_p-1){
echo "<a href='$urlquery_str"."pages=".intval($pNext+1)."' class='naviPN'>Next</a>";
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
/* css แบ่งหน้า */
.browse_page{
clear:both;
margin-left:12px;
height:25px;
margin-top:5px;
display:block;
}
.browse_page a,.browse_page a:hover{
display:block;
height:25px;
width:45px;
font-size:14px;
float:left;
margin:0px 5px;
border:1px solid #CCCCCC;
background-color:#F4F4F4;
color:#333333;
text-align:center;
line-height:22px;
font-weight:bold;
text-decoration:none;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
.browse_page a:hover{
border:1px solid #CCCCCC;
background-color:#000000;
color:#FFFFFF;
}
.browse_page a.selectPage{
display:block;
height:25px;
width:45px;
font-size:14px;
float:left;
margin-right:2px;
border:1px solid #CCCCCC;
background-color:#000000;
color:#FFFFFF;
text-align:center;
line-height:22px;
font-weight:bold;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
.browse_page a.SpaceC{
display:block;
height:25px;
width:45px;
font-size:14px;
float:left;
margin-right:2px;
border:0px dotted #0A85CB;
background-color:#FFFFFF;
color:#333333;
text-align:center;
line-height:22px;
font-weight:bold;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
.browse_page a.naviPN{
width:50px;
font-size:12px;
height:25px;
display:block;
/* width:25px; */
float:left;
border:1px solid #CCCCCC;
background-color:#000000;
color:#FFFFFF;
text-align:center;
line-height:22px;
font-weight:bold;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
/* จบ css แบ่งหน้า */
/* css สำหรับแถวคี่ */
.RowOdd{
background-color:#EAEAEA;
}
/* css สำหรับแถวคู่ */
.RowEven{
background-color:#FBFBFB;
}
/* css สำหรับแภวที่เลือก */
.selectedRow{
background-color:#99FF00;
}
#position {
}
</style>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$("#checkAll").click(function(){
var parentTR=$(".RowOdd,.RowEven");
var statusCheckBox=($(this).prop("checked"))?true:false;
$(this).parents(".myTable").find(".myChkBox").prop("checked",statusCheckBox);
$(this).parents(".myTable").find(".myChkBox").each(function(j,k){
if(statusCheckBox){
set_cookie("chkbox",1,$(".myChkBox").eq(j).val());
}else{
set_cookie("chkbox",0,$(".myChkBox").eq(j).val());
}
});
if($(this).prop("checked")){
parentTR.addClass("selectedRow");
set_cookie("chkbox_all",1,$(this).val());
}else{
parentTR.removeClass("selectedRow");
set_cookie("chkbox_all",0,$(this).val());
}
});
$("input.myChkBox").click(function(){
var parentTR=$(this).parents(".RowOdd,.RowEven");
if($(this).prop("checked")){
parentTR.addClass("selectedRow");
set_cookie("chkbox",1,$(this).val());
$("#position").show();
}else{
parentTR.removeClass("selectedRow");
set_cookie("chkbox",0,$(this).val());
$("#position").hide();
}
});
});
function set_cookie(cname,action,val){
var date = new Date();
if(action==1){
var days=1; // กำหนดจำนวนวันที่ต้องการให้จำค่า
date.setTime(date.getTime()+(days*24*60*60*1000));
}else{
date.setTime(date.getTime()*-1);
}
var expires = "; expires="+date.toGMTString();
document.cookie = cname+"["+val+"]=" +val+ "; expires=" + expires + "; path=/";
}
</script>
</head>
<body>
<table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td align="left">
<br />
<br />
<form id="form1" name="form1" method="post" action="test_submit_checkbox.php?<?=time()?>">
<table class="myTable" width="80%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="43" height="25" align="center" bgcolor="#CCFFCC">
<?php
$cookie_page=(!isset($_GET['pages']))?1:$_GET['pages'];
?>
<input name="checkAll" type="checkbox" id="checkAll" value="<?=$cookie_page?>"
<?=($_COOKIE['chkbox_all'][$cookie_page]==$cookie_page)?"checked":""?> />
</td>
<td width="47" height="25" align="center" bgcolor="#CCFFCC">ลำดับ</td>
<td width="242" height="25" align="center" bgcolor="#CCFFCC">ชื่อ-สกุล</td>
<td width="123" height="25" align="center" bgcolor="#CCFFCC">เลขประจำตัว</td>
<td width="123" height="25" align="center" bgcolor="#CCFFCC">ตำแหน่ง</td>
<td width="123" height="25" align="center" bgcolor="#CCFFCC">แผนก</td>
<td width="123" height="25" align="center" bgcolor="#CCFFCC">ตำแหน่ง</td>
</tr>
<?php
$i=1;
$q="SELECT * FROM employee WHERE 1 ";
$qr=@mysql_query($q)or die(mysql_error());
$total=@mysql_num_rows($qr);
$e_page=10; // กำหนด จำนวนรายการที่แสดงในแต่ละหน้า
if(!isset($_GET['pages'])){
$_GET['pages']=0;
}else{
$_GET['pages']=$_GET['pages']-1;
if($_GET['pages']<0){
$_GET['pages']=0;
}
$chk_page=$_GET['pages'];
$_GET['pages']=$_GET['pages']*$e_page;
}
$q.=" ORDER BY emp_id LIMIT ".$_GET['pages'].",$e_page";
$qr=@mysql_query($q);
if(@mysql_num_rows($qr)>=1){
$plus_p=($chk_page*$e_page)+@mysql_num_rows($qr);
}else{
$plus_p=($chk_page*$e_page);
}
$total_p=ceil($total/$e_page);
$before_p=($chk_page*$e_page)+1;
/// END PAGE NAVI ZONE
while($rs=@mysql_fetch_array($qr)){
?>
<tr class="<?=($i%2==1)?"RowOdd":"RowEven"?><?=($_COOKIE['chkbox'][$rs['emp_id']]==$rs['emp_id'])?" selectedRow":""?>">
<td height="25" align="center">
<input name="item[]" type="checkbox" class="myChkBox" id="item[]" value="<?=$rs['emp_id']?>"
<?=($_COOKIE['chkbox'][$rs['emp_id']]==$rs['emp_id'])?"checked":""?> />
</td>
<td height="25" align="center"><?=(($e_page*$chk_page)+$i)?></td>
<td height="25" align="left"> <?=$rs['emp_fname']?> <?=$rs['emp_lname']?></td>
<td height="25" align="left"> <?=$rs['emp_id']?></td>
<td height="25" align="left"> <?=$rs['emp_position']?></td>
<td height="25" align="left"> <?=$rs['sec_id']?></td>
<td height="25" align="left">
<select name="position" class="textboxinput" id="position" >
<option value="">ตำแหน่งทำงาน</option>
<?php
$objConnect = mysql_connect("localhost","root","root");
$objdatabase = mysql_select_db("project");
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT * FROM type_couse ORDER by type_id";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
?>
<option value="<?php echo $objResult["type_id"] ?>"><?php echo $objResult["type_id"] ?> <?php echo' - '?> <?php echo $objResult["type_name"] ?></option>
<?php
} // end while
?>
</select>
</td>
</tr>
<?php $i++; } ?>
</table>
<br />
<center>
<input type="submit" name="button" id="button" value="Submit" />
</center>
</form>
<br />
<br />
</td>
</tr>
</tbody>
<thead>
<tr>
<td align="left">
<div style="margin:auto;width:95%;">
<?php if($total>$e_page){ ?>
<div class="browse_page">
<?php
if(count($_GET)<=1){
$urlquery_str="?";
}else{
$para_get="";
foreach($_GET as $key=>$value){
if($key!="pages"){
$para_get.=$key."=".$value."&";
}
}
$urlquery_str="?$para_get";
}
// เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า
page_navi($before_p,$plus_p,$total,$total_p,$chk_page);
?>
</div>
<?php } ?>
</div>
</td>
</tr>
</thead>
<tfoot>
<tr>
<td align="left">
<div style="margin:auto;width:95%;">
<?php if($total>$e_page){ ?>
<div class="browse_page">
<?php
// เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า
page_navi($before_p,$plus_p,$total,$total_p,$chk_page);
?>
</div>
<?php } ?>
</div>
</td>
</tr>
</tfoot>
</table>
</body>
</html>
Tag : PHP, MySQL, CSS, jQuery, XAMPP
|
ประวัติการแก้ไข 2017-08-20 07:49:16 2017-08-20 07:49:51
|
 |
 |
 |
 |
Date :
2017-08-20 07:45:01 |
By :
beer |
View :
894 |
Reply :
1 |
|
 |
 |
 |
 |
|
|
|
 |