当我在选择框中选择一个选项时,我正试图创建一个会话。但它不起作用,我甚至没有从选择框中获得值。我使用isset($_POST['SelectBoxName'])
,有其他选择吗?
我正在尝试下面的代码,但它不起作用。
我已经在同一个程序中有另一个会话了,会有问题吗?它用于其他进程,我想为其他进程创建另一个会话,但两者应该在同一程序中。另一个会话运行良好,但这不是。
<?php
echo "<td><select name='cartQuantity' style='width:50px;' onchange='ajaxQuantityChange()'";
for($q=1;$q<=30;$q++)
{
foreach($value as $key2 => $value2)
{
?>
<option value="<?php echo $q; ?>" <?php if($q==$key2){ ?>selected="selected" <?php } ?>><?php echo $q; ?></option>
<?php
}
}
echo "</select></td>";
//CREATE A SESSION
if(isset($_POST['cartQuantity']))
{
$_SESSION['cartQuantity']=$_POST['cartQuantity'];
}
?>
这是"最大数量变化"功能:
<script type="text/javascript">
function ajaxQuantityChange()
{
var quantity;
if(window.XMLHttpRequest)
{
quantity=new XMLHttpRequest();
}
else
{
quantity=new ActiveXObject("Microsoft.XMLHTTP");
}
quantity.onreadystatechange=function()
{
if(quantity.readyState==4 && quantity.status==200)
{
document.getElementById("finalPrice").innerHTML=quantity.responseText;
}
}
quantity.open("GET","finalPrice.php",true);
quantity.send();
} </script>
我的全部代码都在这个链接中。请检查一下,有人能给我问题的答案吗?https://www.mediafire.com/?8iv6gcaox2crogh
您的线路中有问题,
echo "<td><select name='cartQuantity' style='width:50px;' onchange='ajaxQuantityChange()'";
您没有关闭select
标记。应该是
echo "<td><select name='cartQuantity' style='width:50px;' onchange='ajaxQuantityChange()'>";
该代码相当不整洁。你可以这样写:
<?php
echo "<td><select name='cartQuantity' style='width:50px;' onchange='ajaxQuantityChange()'>";
for ($q = 1; $q < 30; $q++)
echo "<option value='$q'" . ($q == $key2 ? " SELECTED" : "") . ">$q</option>";
echo "</select></td>"
?>
要使用会话,必须首先使用session_start();
您可以使用session_destroy();
结束会话