php如何使用select来更改值?

z9ju0rcb  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(368)

我有这个问题,我需要我的类型 select ,以确定要使用的公差。
比方说,我有两个(或更多)的选择在我的生活 select ,一个称为test1,一个称为test2,每个都有一个 type_id 和一个 type_name . 他们的table叫 type_tb 我有2个(或更多)的公差,我想通过 select ,它们在一个名为 tol_tb .
所以当我选择 test1 然后这排人进来了 tol_tb 在哪里 tol_id 如果我选择 test2 然后这排人进来了 tol_tb 在哪里 tol_id 使用is 2
我怎么能这么做呢 select test1那么我在tol\u tb中使用的值将更改为连接到test1的值?
为了更好地解释它,我将向您展示一些代码片段,但在此之前,我认为您可能需要了解我的数据库当前是如何设置的。
我已经说过 type_tb 设置了一个 type_id 和一个 type_name ,
公差表 tol_tb 有点大。它看起来像这样,它有一个 tol_id , tol_p_A_maal ,和 tol_m_A_maal . 它比那个长,但它基本上是一样的所有的方式,这个 tol_p_A_maal 以及 tol_m_A_maal . 是公差的值,其中p代表正,m代表负,当你深入到代码中,我想我更有意义。
这是我的 select ```


    <?php } ?>
include './includes/modal.php';
$notification->setTolaranceErrorNotification();
}

}

长话短说。我需要类型作为公差的选择器。
希望这个编辑能更好地解释我的问题。
更好地解释数据库设置
我有两张table。
一个叫 `type_tb` 其中一个打电话来
tol_tb `type_tb` 有以下列: `type_id` ,  `type_name` 这个表有两行。 `id:1` , 
name:test1 `id:2` ,  `name:test2` 以及 `tol_tb` 有以下列: `tol_id` ,  `tol_m_A_maal` ,  `tol_p_A_maal` .
这里还有两排。
别理那些奇怪的名字,只要记住 `m` 以及 `p` 是这里最重要的部分。 `m` 表示允许的最小负数 `p` 表示加号-允许的最大数字
我认为可以做一个外键或类似的东西。但是我不知道我应该如何在我的代码中连接它。再次感谢您的帮助
mgdq6dx1

mgdq6dx11#

首先,您需要在数据库中设置如下表:
类型\u-tb:
类型\u id
列表项
键入\u名称
公差(tb):
公差id
托尔穆阿马尔
托尔普阿马尔
类型\u id
type\u id列将包含rolerance链接到的类型的id。
然后在发布表单的地方,有两个值:-type(type id)-a\u maaal(用户在输入中填写的公差)
使用“type”值(type\ id)获取与之链接的所有公差:

SELECT * 
FROM `tol_tb` 
WHERE type_id = :type_id

在那里你可以替换 :type_id 从表单中获取的值(选择类型)。
这个mysql请求应该使用一个新方法:getalltolbytypeid($type\u id)(例如)和适当的fetch(尊重初始编码的对象)。
然后像以前一样进行测试:

foreach ($products->getAllTolByTypeId($type_id) as $tol) {
        if ($tol->tol_m_A_maal > ($A_maal) || $tol->tol_p_A_maal < ($A_maal)){

            include './includes/modal.php';
            $notification->setTolaranceErrorNotification();
        }
    }
}

相关问题