我正在开发一个使用PHP创建基本购物车的无样式页面。但是,该页面是使用下拉列表构建的,这很难和由于产品数量的原因,使用效率低下。
我想改变它,所以每个项目都有自己的数量&添加到购物车按钮。不幸的是,我尝试的所有不同配置总是给我同样的错误 - 列'product_id'不能为空。我已经能够让它停止给我这个错误,但它也不会传递价格&产品名称。
这是原始代码(只是创建我想要更改的部分的部分;如果您需要更多,请告诉我):
<form action="<?php echo $editFormAction; ?>" method="post">
<p><label for="product_name">Product Name:</label><br />
<select name="product_name">
<?php
do {
?>
<option value="<?php echo $row_getProducts['product_id']?>">
<?php echo $row_getProducts['store_name']?></option>
<?php
} while ( $row_getProducts = mysql_fetch_assoc( $getProducts ) );
$rows = mysql_num_rows( $getProducts );
if ( $rows > 0 ) {
mysql_data_seek( $getProducts, 0 );
$row_getProducts = mysql_fetch_assoc( $getProducts );
}
?>
</select></p>
<p><label for="quantityt">Quantity:</label><br />
<input type="text" name="quantity" value="" /></p>
<input type="submit" name="submit" value="Add Item to Cart" />
<input type="hidden" name="total" value="" />
<input type="hidden" name="MM_insert" value="first_item" />
</form>
此代码不会返回错误,但只传递一次数量:
<p><label for="product_name">Product Name:</label><br /><br />
<?php
do {
?>
<input name="check1" type="checkbox" /> <?php echo $row_getProducts['product_id']?> <?php echo $row_getProducts['store_name']?> 1 <?php echo $row_getProducts['price']?> <br />
<p><label for="quantityt">Quantity:</label><br />
<input type="text" name="quantity" value="" /></p>
<input type="submit" name="submit" value="Add Item to Cart" />
<input type="hidden" name="total" value="" />
<input type="hidden" name="MM_insert" value="first_item2" />
<br />
<?php
} while ( $row_getProducts = mysql_fetch_assoc( $getProducts ) );
$rows = mysql_num_rows( $getProducts );
if ( $rows > 0 ) {
mysql_data_seek( $getProducts, 0 );
$row_getProducts = mysql_fetch_assoc( $getProducts );
}
?>
</p>
</form>
您可以传递的任何想法都会非常感激!
谢谢,
学家
答案 0 :(得分:0)
您可以将下拉列表更改为以下内容:
<input type='text' name="<?php echo $row_getProducts['product_id'] ?>" value="<?php $row_getProducts['store_name'] ?>">
并在其后面添加数量按钮以及product_id。