-1

我是 PHP 新手。我无法检索该值loopcount

这是我写的代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Order</title>
        <script type="text/javascript">
//This function calculates the total bill by multiplying the price by quantity //selected
    function order()
    {

              var x,y,i,j,p=0;

        j=parseInt(document.getElementById('loopcount').value);

              document.write(j);
        for (i=0;i<=j;i++)
        {
            if(document.getElementById('itemCode[i]').checked==true){
                x=parseFloat( document.getElementById('quantity[i]').value);
                document.write(x);
                y=parseFloat( document.getElementById('price[i]').value);
                document.write(y);
        p+=x*y;
        }
        }
    var conf=confirm("The total amount is:"+ p);

              if(conf==true){
                  header("Location:userHome.php");
              }
              else{
                  header("Location:orderveggies.php");
              }

        }


    </script>
    </head>
    <body>

//the database has a table veggies.which contains the item code(primary key),vegetable name
//price/kilo and quantity in stock.The code bvelow displays data as checkboxes.select the 
//items required and click on order .which gives the total bill ask if it can continue or
//change order
        <form name="myForm" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" onsubmit="order()">
        <table align="center" border="0">
            <tr>

                <th>item Code</th>
                <th>Vegetable</th>
                <th>Price/KG</th>
                <th>Quantity</th>
            </tr>


             <?php

             $db=  mysqli_connect('localhost','root','','ourveggies')
                            or die("Error!Could not connect to the database");
                    $query="select itemCode,itemName,price from veggies";
                    $result=mysqli_query($db,$query)
                            or die("Error in query".mysqli_error($db));
                    $count=mysqli_affected_rows($db);
                    while($row= mysqli_fetch_array($result)){?>
                        <tr>
                        <td><input type="checkbox" name="itemCode[]" value="<?php echo $row['itemCode']; ?>"/><?php echo $row['itemCode']; ?></td>
                        <td><?php echo $row['itemName']; ?></td>
                        <td><input type="hidden" name="price[]" value="<?php echo $row['price']; ?>"/><?php echo $row['price']; ?></td>
                        <td><select name="quantity[]">
                                <option value="0.00">--Quantity--</option>
                                <option value="0.100">100 gm</option>
                                <option value="0.250">250 gm</option>
                                <option value="0.500">500 gm</option>
                            </select></td>
                        </tr>

                  <?php  }?>
                    <input type="hidden" name="loopcount" value="<?php echo $count; ?>"/>

            <tr>
                <td><input type="submit" name="order" value="order" /></td>
            </tr>
        </table>
        </form>
    </body>
</html>
4

2 回答 2

1

mysql_affected_rows()用于更新/删除查询,告诉您有多少行被删除或更新(例如“受影响”)。您正在运行选择查询,因此没有受影响的行 - 选择不会更改数据。

要获取选择检索的行数,您需要mysql_num_rows()代替。

于 2012-10-14T06:25:41.547 回答
0
var conf=confirm("The total amount is:"+ p);

    if(conf==true){
        header("Location:userHome.php");
    }
    else{
        header("Location:orderveggies.php");
    }

}

您知道您尝试在浏览器端的 javascript 中使用服务器端的 php 方法吗?

于 2012-10-15T14:45:20.070 回答