javascript - 通过单击图像将 1 求和到一个值 - PHP

标签 javascript php session get

伙计们,我需要你们的帮助。我有这个代码,它显示了我购物车中的产品:

for($i=0;$i<count($_SESSION['productos']);$i++)
{
    $id = $_SESSION['productos'][$i];
    $prods = mysql_query('SELECT * from productos where idprod='.$id.'');
    $row = mysql_fetch_array($prods);
        echo "<tr>";
        echo "<td>" . $row['nombre']; echo "</td>";

        if($_GET[action]=="suma")
        {
         $_SESSION['unidades'][$i] =  $_SESSION['unidades'][$i] + 1;
        }
        elseif($_GET[action]=="resta")
        {
        $_SESSION['unidades'][$i] =  $_SESSION['unidades'][$i] - 1;
        }

        echo "<td><input name=".$i." type='text' value=" . $_SESSION['unidades'][$i]; echo " size='5'/></td>";  
        echo "<td><a href='carro_detalle.php?action=suma'><img src='images/flecharriba.png' width='10x' height='10px'/></a></td>";
        echo "<td><a href='carro_detalle.php?action=resta'><img src='images/flechabajo.png' width='10px' height='10px'/></a></td>";
        echo "<td>" . $row['precio']; echo "</td>";
        echo "<td>" . $row['precio'] * $_SESSION['unidades'][$i]; echo "</td>";
            echo "</tr>";
}

当我分别单击两个图像时,我需要将 1 个单位或剩余 1 个单位与 $_SESSION['unidades'][$i] 相加到所选产品。 问题是,当我点击时,它会为所有产品添加 1。有什么简单的方法可以在不使用 $_GET vars 的情况下做到这一点吗?我对 JavaScript 的了解不多。 谢谢!!

最佳答案

您可能应该从循环中删除条件并将其放在循环之外:

if($_GET[action]=="suma")
{
    $_SESSION['unidades'][$i] =  $_SESSION['unidades'][$i] + 1;
}
elseif($_GET[action]=="resta")
{
    $_SESSION['unidades'][$i] =  $_SESSION['unidades'][$i] - 1;
}


for($i=0;$i<count($_SESSION['productos']);$i++)
{
$id = $_SESSION['productos'][$i];
$prods = mysql_query('SELECT * from productos where idprod='.$id.'');
$row = mysql_fetch_array($prods);
    echo "<tr>";
    echo "<td>" . $row['nombre']; echo "</td>";

    echo "<td><input name=".$i." type='text' value=" . $_SESSION['unidades'][$i]; echo " size='5'/></td>";  
    echo "<td><a href='carro_detalle.php?action=suma'><img src='images/flecharriba.png' width='10x' height='10px'/></a></td>";
    echo "<td><a href='carro_detalle.php?action=resta'><img src='images/flechabajo.png' width='10px' height='10px'/></a></td>";
    echo "<td>" . $row['precio']; echo "</td>";
    echo "<td>" . $row['precio'] * $_SESSION['unidades'][$i]; echo "</td>";
        echo "</tr>";
}

关于javascript - 通过单击图像将 1 求和到一个值 - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26892836/

相关文章:

php - "$"传入shell exec

php - 非 SSL 和 SSL 之间的 session 丢失

javascript - 如何使用 jQuery 禁用多个链接?

javascript - 结合和缩小 javascript 还是使用 Google CDN 更好?

javascript - 快速 session 无法设置未定义的属性 'id'

php - 在将值插入/复制到其他值时获取 ID

javascript - 使用 jquery 返回多个值以进行注册表单验证

java - Android 强制更新 Webview session

hibernate - 为什么 hibernate session.close() 不自动刷新数据?

javascript - Typescript 中用于存储任何组件的数据类型