Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为php会话中的每个id设置大小_Php_Jquery_Ajax_Session - Fatal编程技术网

为php会话中的每个id设置大小

为php会话中的每个id设置大小,php,jquery,ajax,session,Php,Jquery,Ajax,Session,好吧,我已经为此奋斗了很长一段时间,这真的很让人恼火。所以我需要一些帮助 我有一个下拉列表,允许用户为他们购买的图片选择尺寸。该值需要保存在php会话中并分配给该特定图片,允许用户在每张图片上选择不同大小的多张图片 当用户选择尺寸时,我通过ajax提交下拉列表: <script type="text/javascript"> $('#sizeConfirm').click(function() { var size = $("#sizeSelector opt

好吧,我已经为此奋斗了很长一段时间,这真的很让人恼火。所以我需要一些帮助

我有一个下拉列表,允许用户为他们购买的图片选择尺寸。该值需要保存在php会话中并分配给该特定图片,允许用户在每张图片上选择不同大小的多张图片

当用户选择尺寸时,我通过ajax提交下拉列表:

<script type="text/javascript">
    $('#sizeConfirm').click(function() {
        var size = $("#sizeSelector option:selected").val(); 
        var id = $("#idInput").val();
        $("#sizeId"+id).html(size);

        var dataString = 'size='+ size + '&id='+id;

        $.ajax({
            type:"POST", 
            url: "../functions/size-functions.php",
            data: dataString,
            success: function() {

            }
        })
    })
</script>
如果有帮助,选择选项如下所示:

<select class="form-control" id="sizeSelector">
    <option>Select a Size</option>
    <option>4x4</option>
    <option>4x6</option>
    <option>5x7</option>
    <option>6x6</option>
    <option>8x8</option>
    <option>8x10</option>
    <option>8x12</option>
    <option>10x12</option>
    <option>12x16</option>
    <option>4x18</option>                   
</select>

选择一个尺寸
4x4
4x6
5x7
6x6
8x8
8x10
8x12
10x12
12x16
4x18

我不确定在这个问题上到底应该说什么——因此,如果你认为我遗漏了一些需要找到解决方案的东西,请简单地评论并告诉我,我会添加它。谢谢大家!

因为您正在将会话分配为数组
$\u session['size'][$id]

要显示结果,请尝试以下操作:

<?php
session_start();
$id = "1";//$_POST['id'];
$size="14";//$_POST['size'];
$_SESSION['size'][$id] = $size;
//print_r($_SESSION['size']);


echo $_SESSION['size'][$id];
?>

编辑:
这将显示他们正在查看的每个产品的选定尺寸

$\u会话['size']是一个数组,每个大小都在id键下。使用
print\r($\u SESSION)
查看完整的阵列。好的,那么您只需对每个阵列执行
foreach
即可显示大小?好的,所以我已将其显示出来。现在我需要获取它,以便它显示在我的商品表“购物车”的
大小
行下。请查看屏幕截图,以便更好地理解。我不确定我是否理解…这是用户的购物车吗?如果是这样,在“大小”位下,只需将标签替换为所选的大小即可。否则我就糊涂了。我想我真正应该问的是。。。。如何分解阵列以显示每个独立的id和大小?现在我正在使用foreach来实现屏幕截图上的目标。但这显示了所有这些。好的,在列出产品时,我假设您使用产品id(?)和其他详细信息获取图像…使用id,只需输入$id=“无论您使用什么id,检索图像和其他信息”;echo$_会话['size'][$id'];
<select class="form-control" id="sizeSelector">
    <option>Select a Size</option>
    <option>4x4</option>
    <option>4x6</option>
    <option>5x7</option>
    <option>6x6</option>
    <option>8x8</option>
    <option>8x10</option>
    <option>8x12</option>
    <option>10x12</option>
    <option>12x16</option>
    <option>4x18</option>                   
</select>
<?php
session_start();
$id = "1";//$_POST['id'];
$size="14";//$_POST['size'];
$_SESSION['size'][$id] = $size;
//print_r($_SESSION['size']);


echo $_SESSION['size'][$id];
?>