当我使用PHP在选择框中选择任何选项时,创建一个会话


Create a session when i select any option in select box using PHP?

当我在选择框中选择一个选项时,我正试图创建一个会话。但它不起作用,我甚至没有从选择框中获得值。我使用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(); 结束会话