我在主页面(index.php)上有两个类别(产品和水果)。然后我创建一个名为(cart.php)的新页面。在购物车页面我想要包括我的商品他们来自产品类别或水果类别。 我写下面的代码来添加我的购物车页面中的项目
<?php
$total = 0;
foreach ($cart as $key => $value)
if(condition){
$cartsql = "SELECT * FROM products WHERE id=$key";
}
else(condition){
$cartsql = "SELECT * FROM fruits WHERE id=$key";
}
$cartres = mysqli_query($connection, $cartsql);
$cartr = mysqli_fetch_assoc($cartres);
?>
在上面的代码我有困惑,我不明白如何写如果在我的购物车中添加项目的条件,他们属于产品类别或水果类别。所以任何人请帮助我写我的if条件从特定类别中选择主页并添加到购物车页面。或者有任何其他更好的解决方案来解决我的问题,请帮助
答案 0 :(得分:1)
一种可能性是预先确定产品和水果的不同关键范围。换句话说,目录产品的范围从10000到19999.并且分配水果的范围从20000到29999.然后您的条件检查允许的范围。
另一种可能性是从购物车中返回$product_code
变量,该变量代表“水果”和“水果”。或者&#39;产品&#39;,然后:
"SELECT * FROM $product_code WHERE id=$key"
这可能会减少在这里使用条件的需要。
答案 1 :(得分:0)
也许我正在以错误的方式看待这个,但你实际上并没有说出了什么问题。对我来说,似乎你在编码检测是否水果OR产品与你的critera相匹配然后执行一个过程,如果两者都不匹配 - 做其他事情。或者它可能是你foreach的语法
如果我解释错了,我很抱歉,但我不清楚问题是在选择,检查标准或执行所需的操作。但你确实说过&#39;我有困惑,我无法理解如果写条件&#39;
由于我不确定问题到底是什么,我提供了两种可能的解决方案。
解决方案1 如果不为您编写完整的代码,这将是一种实际检查您的标准是否匹配的解决方案。手动制作$ fruits或$ products 1或0并运行它进行测试 - 要么是1回声有效&#39;要么0回声&#39;无效&#39;然后,您可以为实际选择和操作添加自己的代码。这不是完整的代码,只是帮助你了解我最初的问题。
在任何情况下,通过使用这样的代码并替换您自己的代码,您可以看到它出错的地方,获取值,比较它们或所需的最终操作。
希望有所帮助
<?php
// Code here to check if condition for products and fruits is valid (set manually in this code to 1 for valid or 0 for not valid)
$products='0';
$fruits='0';
//Check to see if either fruits or products are valid
if($products == 1 || $fruits == 1)
{
// perform operation if either or both are valid
echo 'valid';
} else {
//perform operation if neither are valid
echo 'not valid';
}
?>
解决方案2 也许foreach语法是错误的,你似乎不包括{...}来定义语句的范围。您将它们包含在if而不是foreach中 - 下面的代码示例 -
<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as $value) {
echo $value. '<br>';
}
unset($value);
?>