[英]Passing string values into an array
我正在使用以下代碼將數字值傳遞到購物車軟線。
if(is_array($_SESSION['cart'])){
echo '<tr bgcolor="#FFFFFF" style="font-weight:bold">
<td>Serial</td>
<td>Part No</td>
<td>Name</td>
<td>Price</td>
<td>Qty</td>
<td>Amount</td>
<td>Options</td>
</tr>';
$max=count($_SESSION['cart']);
for($i=0;$i<$max;$i++){
$pid=$_SESSION['cart'][$i]['productid'];
$q=$_SESSION['cart'][$i]['qty'];
$pname=get_product_name($pid);
if($q==0) continue;
?>
<tr bgcolor="#FFFFFF">
<td><?php echo $i+1 ?></td>
<td><?php echo $pid ?></td>
<td><?php echo $pname ?></td>
<td>$ <?php echo get_price($pid)?></td>
<td><input type="text" name="product<?php echo $pid?>" value="<?php echo $q?>" maxlength="3" size="2" /></td>
<td>$ <?php echo get_price($pid)*$q?></td>
<td><a href="javascript:del(<? echo $pid?>)">Remove</a></td>
</tr>
<?php
}
?>
當我插入數字值如“ 12191008”,“ 05191034”時,它工作正常。 但對於像“ PF401404”這樣的字符串值,則無法正常工作。 如何修改代碼以傳遞字符串值?
還添加到購物車功能如下。
function addtocart($pid,$q){
if($pid<1 or $q<1) return;
if(is_array($_SESSION['cart'])){
if(product_exists($pid)) return;
$max=count($_SESSION['cart']);
$_SESSION['cart'][$max]['productid']=$pid;
$_SESSION['cart'][$max]['qty']=$q;
}
else{
$_SESSION['cart']=array();
$_SESSION['cart'][0]['productid']=$pid;
$_SESSION['cart'][0]['qty']=$q;
}
}
我認為
if($pid<1 or $q<1) return;
這對你不起作用。 因為您的$ pid不是整數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.