|
|
|
ติดปัญหา ลบค่า checkbox ที่อยู่ใน session ด้วย ปุ่ม un select all ช่วยดูทีนะครับ |
|
|
|
|
|
|
|
ตอนนี้ ใส่
Code (C#)
unset($_SESSION["value"]);
ค่าเฉพาะ checkbox หายครับ
แต่ว่า จะทำยังไง ให้
กดปุม Code (C#)
<input type="reset" value="reset"/>
จะใส่ session ในปุ่ม reset ยังไงให้กดแล้วค่าหายครับ
|
|
|
|
|
Date :
2014-09-19 11:42:16 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<input type="button" onclick="reset();" />
<?PHP
function reset(){
unset($_SESSION['.....']);
}
?>
|
|
|
|
|
Date :
2014-09-19 13:32:23 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองใส แล้วมัน ขึ้น
Fatal error: Cannot redeclare reset()
แบบนี้อ่ะครับCode (C#)
<?php
function reset()
{
unset($_SESSION['value']);
}
?>
<form action="select.php" name="check[]" method="post" >
<table align="right">
<tr>
<td align="right">
<input type="submit" name="submit" size="30" value="Submit" onclick="return confirm('ยืนยันการExport')"/ >
<input type="reset" value="Unselect all" onclick="reset();" />
|
ประวัติการแก้ไข 2014-09-19 13:56:38 2014-09-19 13:56:44 2014-09-19 13:57:02
|
|
|
|
Date :
2014-09-19 13:56:21 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fatal error: Cannot redeclare reset()
ถ้าเกิด การ error แบบนี้ เราจะมีวิธีแก้ไหมครับ
แก้แล้วไม่ได้เลยย ขอความกรุณาช่วยดูทีนะครับ
|
|
|
|
|
Date :
2014-09-19 20:59:36 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แยกโค๊ดให้ชัดเจนครับ อันไหน javascript อันไหน php
รู้สึกจะงงโค๊ดกันอยู่นะครับ
และ เห็นใช้ SESSION ก็อยากถามว่า ได้ใช้คำสั่่ง session_start() ก่อนหน้านี้หรือเปล่า
แล้ว fatal error บันทัดไหน เอาบันทัดนั้นมาดูครับ เวลา php บอก error จะมีหมายเลขบันทัดมาด้วย
|
|
|
|
|
Date :
2014-09-19 22:34:03 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 9 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-09-19 22:34:03
รายละเอียดของการตอบ ::
รู้สึก ใส่ codeนี้ มันจะ ขึ้น error
<?php
function reset()
{
unset($_SESSION["value"]);
}
อันนี้ครับ error Fatal error: Cannot redeclare reset() in C:\AppServ\www\Myproject\stock_show.php on line 275
อันนี้ครับ code หน้า แสดงข้อมูล
Code (C#)
<?php
session_start();
function check_session($value){
if(isset($_SESSION['value'])){
if(in_array($value, $_SESSION['value'])){
return true;
}else{
return false;
}
}
}
?>
<!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" />
<script type="text/javascript" src="script/jquer
y-2.1.1.min.js"></script>
<script type="text/javascript">
function set_session(ele){
if(ele.checked==true){
$.ajax({
type: 'POST',
url: "set_session.php", //+ ส่งค่าไปสร้าง Session ที่ไฟล์ set_session.php
data: {value:ele.value, con:'create'}
});
}else{
$.ajax({
type: 'POST',
url: "set_session.php", //+ ยกเลิก Session หากติ๊กเครื่องหมายถูกออก
data: {value:ele.value, con:'delete'}
});
}
}
</script>
<body >
<body bgcolor="#F0F0F0">
<?
if($_SESSION['Status']==""){
echo "<script language=\"javascript\">";
echo "alert('กรุณา Login เข้าสูู้ระบบก่อนครับ');";
echo "window.location='login.php';";
echo "</script>";
session_destroy();
header("location:login.php");
}else{
}
?>
<center>
<table width="1300" border="0" cellspacing="0" cellpadding="0" class="fix" >
<tr>
<td height="90" colspan="6" align="right" background="images/header1.1" /><img src="images/home/Monsieur.png" height="27"><a href="showLogin.php"><font color="#0000FF"><b><? echo $_SESSION['txtUsername']; ?></b></font></a><br />
<img src="images/home/key.png" height="27">
<a href="logout.php"> <font color="#FF0000"><b>Logout</b></font></a>
</td>
</tr>
<tr>
<td width="1300" align="left"><a href="home.php"><img src="images/home/ouhome.png" onmouseover="src='images/home/Ovhome.png'" onmouseout="src='images/home/ouhome.png'" /></a></td>
<td width="1300" align="right" > <form action="stock_show.php" method="post" name="search">
<div align="right">Search:
<select name="topic">
<option value="product_id">Product No.</option>
<option value="product_des">Product desc.</option>
<option value="serial">Serial No.</option>
</select>
<input type="text" name="search" />
<input name="submit" type="image" value="Search" src="images/home/icon_find.png" align="right" width="25" height="23" /> </div>
</form></td>
</tr>
<tr>
<td height="299" width="1200" colspan="2" valign="top" background="images/center.png" >
<form action="select.php" name="check[]" method="post" >
<table align="right">
<tr>
<td align="right">
<input type="submit" name="submit" size="30" value="Submit" onclick="return confirm('ยืนยันการExport')"/ >
<input type="reset" name="reset" value="Unselect all" onclick="reset();" />
<?php
function reset()
{
unset($_SESSION["value"]);
}
?>
</a>
</td>
</tr>
</table>
</br>
</br>
<?
$Per_Page = 20; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$select =mysql_query(" select * from stock");
$Page_Start = (($Per_Page*$Page)-$Per_Page);
if($Num_Rows<=$Per_Page)
{
$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
$Num_Pages =($Num_Rows/$Per_Page)+1;
$Num_Pages = (int)$Num_Pages;
}
$sql =(" select * from stock order by id ASC LIMIT $Page_Start , $Per_Page");
$rs=mysql_query($sql)
?>
<?php
//ถ้ามีการส่งค่าข้อมูล
$topic=$_POST['topic'];
if(isset($search) ) {
echo "<font size='+1' color='#FF0033'>ผลลัพธ์ของคำว่า [ $search ] </font><br />";
?>
<table id="mytable" border="1" align="center" width="1280" class="fix" >
</br><tr >
<td height="51" align="center" ><font color="#CCCCCC" size="+1">Clone</font></td>
<td height="51" align="center" ><font color="#CCCCCC" size="+1">No.</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Product No</font></td>
<td align="center"><font color="#CCCCCC" size="+1"><p>Product Description</p>
</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Start</font></td>
<td align="center"><font color="#CCCCCC" size="+1">End</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Transaction Details</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Serial</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Customer</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Transaction Code</font></td>
<td height="51" align="center" ><font color="#CCCCCC" size="+1">Quantity
</font></td>
<td align="center" ><font color="#CCCCCC" size="+1">Image</font></td>
<td height="51" align="center" ><font color="#CCCCCC" size="+1">User
</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Edit</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Delete</font></td>
<td align="center"><font color="#CCCCCC" size="+1">Select</font></td>
</tr>
<tbody>
<?php
include_once"connect.php";
$n=0;
$result = mysql_query("SELECT * FROM stock WHERE $topic like '%$search%' ");
$num =@mysql_num_rows($result)or die (mysql_error());
echo "<font size='+1' color='green'>ค้นพบทั้งหมด :: [ $num ] </font><br />";
$sql = "select REPLACE($topic, '$search', '<font style=background:#FFFF00>$search</font>') AS $topic ,product_id,product_des,serial,
REPLACE($topic, '$search', '<font style=background:#FFFF00>$search</font>') AS $topic ,start_date,end_date,detail,customer,trans_code,quantity
,image,user,id
from stock where $topic like '%$search%' ";
$view = mysql_query($sql);
while ($data =@mysql_fetch_array($view))
{
?>
<tr >
<td title="Insert" ><a href="stock3.php?id=<?=$data['id'];?>"><center><img src="images/home/add.png" /></center></a></td>
<td align="center" ><? echo ++$n ?></td>
<td width="200" ><?=$data['product_id'];?></td>
<td class="fix"><?=$data['product_des'];?></td>
<td width="180" align="center"><?=$data['start_date'];?></td>
<td width="180" align="center"><?=$data['end_date'];?></td>
<td width="800" class="fix" ><?=$data['detail'];?> </td>
<td class="fix"><?=$data['serial'];?></td>
<td class="fix" ><a href="showSearch_test.php?customer=<?=$data['customer'];?>&product_id=<?=$data['customer'];?>"><?=$data['customer'];?></a></td>
<td width="25" align="center"><?=$data['trans_code'];?> </td>
<td width="25" align="center"><?=$data['quantity'];?></td>
<td ><a href="../myproject/storeimage/<?=$data['image'];?>"><center><img src='<?=$data['image'];?>' /></center></a></td>
<td class="fix"><?=$data['user'];?></td>
<td title="Edit" ><a href="stock.php?id=<?=$data['id'];?>"><img src="images/home/edit2.png" /></a></td>
<td align="center" title="Delete" ><a href="stock_delete.php?id=<?=$data['id'];?>" onclick="return confirm('ยืนยันการลบ')"><img src="images/home/dele.gif" /></a></td>
<td align="center" title="Export"> <a href="select.php?id=<?=$data['id'];?>">
<tr >
<td title="Insert" ><a href="stock3.php?id=<?=$data['id'];?>"><center><img src="images/home/add.png" /></center></a></td>
<td align="center" ><? echo ++$n ?></td>
<td width="200" ><?=$data['product_id'];?></td>
<td class="fix"><?=$data['product_des'];?></td>
<td width="180" align="center"><?=$data['start_date'];?></td>
<td width="180" align="center"><?=$data['end_date'];?></td>
<td width="800" class="fix" ><?=$data['detail'];?> </td>
<td class="fix"><?=$data['serial'];?></td>
<td class="fix" ><a href="showSearch_test.php?customer=<?=$data['customer'];?>&product_id=<?=$data['customer'];?>"><?=$data['customer'];?></a></td>
<td width="25" align="center"><?=$data['trans_code'];?> </td>
<td width="25" align="center"><?=$data['quantity'];?></td>
<td ><a href="../myproject/storeimage/<?=$data['image'];?>"><center><img src='<?=$data['image'];?>' /></center></a></td>
<td class="fix"><?=$data['user'];?></td>
<td title="Edit" ><a href="stock.php?id=<?=$data['id'];?>"><img src="images/home/edit2.png" /></a></td>
<td align="center" title="Delete" ><a href="stock_delete.php?id=<?=$data['id'];?>" onclick="return confirm('ยืนยันการลบ')"><img src="images/home/dele.gif" /></a></td>
<td align="center" title="Export"> <a href="select.php?id=<?=$data['id'];?>">
<input type="checkbox" name="id[]" id="id[]" value="<?=$data['id'];?>" <?php if(check_session($data['id']))echo'checked="checked"' ?> onclick="set_session(this);" />
ส่วนอันนี้ code เอาไว้เก็บค่า ที่เกียวกับ checkbox ครับ
Code (C#)
<?php
session_start();?>
<?php
// Session
session_start();
if($_POST['con'] == 'create'){
if (!in_array($_POST['value'], $_SESSION['value'])) {
$_SESSION['value'][] = $_POST['value'];
}
}else{
if (in_array($_POST['value'], $_SESSION['value'])) {
$key = array_search($_POST['value'], $_SESSION['value']); //
unset($_SESSION['value'][$key]); //
}
}
?>
ถ้าผม โพสงงไปเด๋ว โพสใหม่ให้นะครับ รบกวนด้วยนะครับ
|
ประวัติการแก้ไข 2014-09-19 23:33:35
|
|
|
|
Date :
2014-09-19 23:17:05 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เช็คบันทัด 22-23 ด้วยครับ ผมไม่ได้ดูผิดไปนะครับว่ามันคนละบันทัดกัน script มัน error อยู่นะครับ
บันทัดที่ 46-47 ให้เหลือ body เดียว
108 funntion นี้ไม่เห็นที่ใช้ครับเอาออกไปก็ได้
<?php
function reset()
{
unset($_SESSION["value"]);
}
?>
เดี๋ยวเจอ จะเอามาลงอีก แค่นี้ก่อนครับ ลองดู
ปล. บันทัด 256 มันเก่าไปหรือเปล่าครับ เลขบันทัดเออเร่อร์ โค๊ดได้มีการแก้ไปแล้วมั้งครับ
เพราะถ้า ตามโค๊ดที่ให้มา มันน่าจะ เออเร่อร์ บันทัดข้างบน ไปก่อนแล้วเพราะรูปแบบเหมือนกัน
ปล. โค๊ดเออเร่อร์เพียบเลยอะครับ HTML ไม่มี tag ปิด เยอะมาก
|
ประวัติการแก้ไข 2014-09-19 23:40:21 2014-09-19 23:44:58 2014-09-19 23:55:41
|
|
|
|
Date :
2014-09-19 23:29:17 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<input type="reset" name="reset" value="Unselect all" onclick="reset();" />
<?php
function reset()
{
unset($_SESSION["value"]);
}
?>
แก้เป็น
Code (JavaScript)
<input type="button" name="reset" value="Unselect all" onclick="reset();" />
<script language="javascript" >
function reset(){
$('.chk_box').each(function(index, element) {
$.ajax({
type: 'POST',
url: "set_session.php",
data: {value: $(element).val(), con:'delete'}
});
$(element).prop('checked', false);
})
}
</script>
<input type="checkbox" name="id[]" id="id[]" value="<?=$data['id'];?>" <?php if(check_session($data['id']))echo'checked="checked"' ?> onclick="set_session(this);" />
แก้เป็น
Code (PHP)
<input type="checkbox" class='chk_box' name="id[]" id="id[]"
value="<?=$data['id'];?>" <?php if(check_session($data['id'])) echo 'checked'; ?> onclick="set_session(this);" />
ลองดูครับ ยังไม่ได้ทดสอบนครับ
|
ประวัติการแก้ไข 2014-09-20 00:19:58
|
|
|
|
Date :
2014-09-20 00:18:57 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำคล้ายๆกับการ Set หรือ Unset นั้นแหละครับ จากที่ดูคุณใช้ Ajax ในการกำหนดค่า
ก็ทำเช่นเดียวกันครับกับการ reset ค่าหมด
Code (JavaScript)
function reset (){
$.ajax({
type: 'POST',
url: "ไฟล์ที่เคลียร์ Session ",
data: {con:'clear'}
});
}
|
|
|
|
|
Date :
2014-09-20 00:26:04 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จากการที่ลอง code ของคุน Chaidhanan และคุน Krungsri
ทุกอย่างเหมือนเดิมครับ เวลา ผมติ๊กเครื่องหมาย checkbox ออก ค่ามันลบ แต่ เวลา กดปุ่ม reset ค่ามันไม่หายอ่ะครับ
ติดตรงนี้อย่างเดียวว
อันนี้ เป็นไฟล์ code ไฟล์ url" set_session.php"
Code (C#)
session_start();
if($_POST['con'] == 'create'){
if (!in_array($_POST['value'], $_SESSION['value'])) {
$_SESSION['value'][] = $_POST['value'];
}
}else{
if (in_array($_POST['value'], $_SESSION['value'])) {
$key = array_search($_POST['value'], $_SESSION['value']); //+ ใช้ฟังชั่น array_search หา index array
unset($_SESSION['value'][$key]); //+ ลบ Session ด้วย index array ที่ได้
}
}
?>
รบกวนด้วยนะขอรับบ ดูให้ผมทีนะครับ ขอบพระคุนอย่างสูงง
|
ประวัติการแก้ไข 2014-09-20 11:13:21 2014-09-20 11:13:27
|
|
|
|
Date :
2014-09-20 11:10:47 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
if($_POST['con'] == 'create'){
if (!in_array($_POST['value'], $_SESSION['value'])) {
$_SESSION['value'][] = $_POST['value'];
}
}elseif($_POST['con'] == 'delete'){
if (in_array($_POST['value'], $_SESSION['value'])) {
$key = array_search($_POST['value'], $_SESSION['value']); //+ ใช้ฟังชั่น array_search หา index array
unset($_SESSION['value'][$key]); //+ ลบ Session ด้วย index array ที่ได้
}
}elseif($_POST['con']=='delAll') unset($_SESSION['value']);
Code (JavaScript)
<input type="reset" value="Unselect all" onclick="reset();" />
<script language="javascript" >
function reset(){
$.ajax({ type: 'POST', url: "set_session.php", data: { con:'delAll' } });
}
</script>
ถ้าไม่ได้ยังก็ลองทดสอบโค๊ดข้างล่างดูนะครับ
Code (PHP)
<?php
session_start();
if(isset($_REQUEST['run'])){
switch($_REQUEST['run']){
case 'set_session': $_SESSION['mysession'][$_REQUEST['ses_id']]=$_REQUEST['ses_val']; break;
case 'clr_session'; unset($_SESSION['mysession'][$_REQUEST['ses_id']]); break;
case 'clr_session_all'; unset($_SESSION['mysession']); break;
case 'get_session':
default: print_r($_SESSION);
}
session_write_close();
exit;
}
?><!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script language="javascript" >
$(document).ready(function(e) {
$('.chk_box').click(function(){
$.ajax({
type: 'POST', url: '?run='+($(this).prop('checked')? 'set' : 'clr')+'_session',
data: { ses_id: $(this).attr('ses_id'), ses_val: $(this).val() }
});
});
$('.reset').click(function reset(){
$.ajax({ type: 'POST', url: "?run=clr_session_all" });
$('.chk_box').each(function(index, element) { $(element).prop('checked', false); })
});
$('.get_session').click(function(){
$.ajax({ type: 'POST', url: "?run=get_session" }).done(function(msg){ alert(msg); });
});
});
</script></head>
<body>
<?php
for( $id=1; $id<=10; $id++){
echo '<input type="checkbox" class="chk_box" name="id[]" ses_id="id_'.$id.'" value="'.$id.'" />';
// กำหนด id ใช้ชัดเจนครับ ไม่ต้องไปใช้คำสั่ง array_search
}
?>
<input type="button" class="reset" name="reset" value="Unselect all" />
<input type="button" class="get_session" name="get_sesson" value="Show Session" />
</body>
</html>
|
|
|
|
|
Date :
2014-09-21 05:04:05 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแล้ว ยังไม่ได้เลยอ่าครับบ กด ปุ่ม แล้วค่า มันไม่หายย
มันต้องแก้ยังไงดีอ่าา หรือว่ามันจะม่ายได้
ช่วยทีนะครับบ เหลือตรงนี้ก็เสร็จแล้ว แก้ไม่ได้เลยย TT
|
|
|
|
|
Date :
2014-09-21 12:38:59 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมไม่รู้โค๊ดเต็มมันยังไงนะครับ แต่ผมก็ให้โค๊ดที่ทำงานคล้ายกันเป็นตัวอย่างไปแล้ว ลองศึกษาดูนะครับ
โค๊ดที่ผมให้ไป ทดลองแล้ว มันใช้ได้ครับ
|
|
|
|
|
Date :
2014-09-21 15:57:57 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมแก้ ได้เรียบร้อยแล้วนะครับ ขอบคุน ทุกคนมากๆเลยนะครับ ^^ โดยเฉพาะ คุณ Chaidhanan ขอบคุนจิงๆครับ
|
|
|
|
|
Date :
2014-09-22 14:33:02 |
By :
bbb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|