Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP。查找包含特定产品的MySQL数据库表_Php_Mysql - Fatal编程技术网

PHP。查找包含特定产品的MySQL数据库表

PHP。查找包含特定产品的MySQL数据库表,php,mysql,Php,Mysql,我有电子商务类型的网站与目录页,产品页和购物车。数据库中有3种类型的动态产品页面(因为产品之间存在差异),还有3个表。 通过单击目录页面或产品页面上的添加到购物车按钮,用户可以将产品添加到购物车中。我将产品id放入变量中。所以我可以编写SQL查询并用数据库表中的信息填充产品。 例如: SELECT * FROM table1 WHERE id='$item_id' LIMIT 1 但我如何找出我应该使用哪一个表(在我的示例中是表1、表2或表3) 这里是PHP代码: $i=0; foreach(

我有电子商务类型的网站与目录页,产品页和购物车。数据库中有3种类型的动态产品页面(因为产品之间存在差异),还有3个表。 通过单击目录页面或产品页面上的添加到购物车按钮,用户可以将产品添加到购物车中。我将产品id放入变量中。所以我可以编写SQL查询并用数据库表中的信息填充产品。 例如:

SELECT * FROM table1 WHERE id='$item_id' LIMIT 1
但我如何找出我应该使用哪一个表(在我的示例中是表1、表2或表3)

这里是PHP代码:

$i=0;
foreach($_SESSION['cart_array'] as $each_item){
    $i++;
    $item_id = $each_item['item_id'];
    $sql = "SELECT * FROM products_accessories WHERE id='$item_id' LIMIT 1";
    $result = mysqli_query($dbCon, $sql);
    while($row = mysqli_fetch_array($result)){
        $product_name = $row['prod_name'];
        $price = $row['price_USD'];
        $product_image = $row['main_photo'];
    }
    $total_price = $price * $each_item['quantity'];
    $ordered_quantity = $each_item['quantity'];

有两种方法:要么检查所有表并找到一个合适的表,要么将表名(或其他标志)传递给脚本。为什么要在三个不同的表中存储相同的信息?通常情况下,一个简单的“产品”表中包含产品。然后从该表中进行选择。也许您必须修改表结构:您可以添加一个归档的
(或
类型
,或
种类
…)来对不同的产品类型进行分类。如果添加了另一种产品类型,您将添加另一个表吗?如果您现在开始这个项目,我建议您修改表结构。否则,您必须在所有表中搜索,或者在HTML搜索表单中添加“类别”选项。您如何在3个表中保持id的唯一性?您有带迭代器的查找表吗?如果是这样的话,根据fusion3k的建议,您可以将其与某种类型的class/type/etc标志一起使用。谢谢你的评论。我将把有关产品的所有信息收集到一个表中,并向其中添加类别字段。有两种方法:要么检查所有表并找到一个合适的表,要么将表名(或其他标志)传递给脚本。为什么要将相同的信息存储在三个不同的表中?通常情况下,一个简单的“产品”表中包含产品。然后从该表中进行选择。也许您必须修改表结构:您可以添加一个归档的
(或
类型
,或
种类
…)来对不同的产品类型进行分类。如果添加了另一种产品类型,您将添加另一个表吗?如果您现在开始这个项目,我建议您修改表结构。否则,您必须在所有表中搜索,或者在HTML搜索表单中添加“类别”选项。您如何在3个表中保持id的唯一性?您有带迭代器的查找表吗?如果是这样的话,根据fusion3k的建议,您可以将其与某种类型的class/type/etc标志一起使用。谢谢你的评论。我将把所有关于产品的信息收集到一个表中,并向其中添加类别字段。