Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 108,374

HOME > PHP > PHP Forum > ปรึกษาเกี่ยวกับการเก็บค่า cookie แบบ check box และ list menu พร้อมกันหลายค่า



 

ปรึกษาเกี่ยวกับการเก็บค่า cookie แบบ check box และ list menu พร้อมกันหลายค่า

 



Topic : 128638



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



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




รบกวนปรึกษาว่า จะประยุกต์ใช้โค๊ดนี้ยังไงครับ

จะทำอย่างไรให้เวลากด 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 ";
        [email protected]_query($q)or die(mysql_error());
		
		[email protected]_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";
			
		[email protected]_query($q);	
		if(@mysql_num_rows($qr)>=1){   
			$plus_p=($chk_page*$e_page)[email protected]_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([email protected]_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"> &nbsp;<?=$rs['emp_fname']?>&nbsp;&nbsp;<?=$rs['emp_lname']?></td>
          <td height="25" align="left"> &nbsp;<?=$rs['emp_id']?></td>
          <td height="25" align="left"> &nbsp;<?=$rs['emp_position']?></td>
          <td height="25" align="left"> &nbsp;<?=$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
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-08-20 07:45:01 By : beer View : 421 Reply : 1
 

 

No. 1



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



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

session_start()
session_destroy()

$_SESSION['magic name']






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-07-30 12:26:23 By : PhrayaDev
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ปรึกษาเกี่ยวกับการเก็บค่า cookie แบบ check box และ list menu พร้อมกันหลายค่า
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม , รับทำบัญชี , โรงงานผลิตครีม , สำนักงานบัญชี , รับจดทะเบียนบริษัท , Pangpond , รถมือสอง

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