У меня есть эта проблема, мне нужен тип my select
, чтобы определить, какой допуск использовать.
Допустим, у меня есть 2 (или более) варианта в моем select
, один называется test1, а другой называется test2, каждый имеет type_id
и type_name
.и их таблица называется type_tb
И у меня есть 2 (или более) допусков, которые я хочу изменить через select
, они находятся в таблице с именем tol_tb
.
поэтому, когда я выбираю test1
, тогда используется строка в tol_tb
, где tol_id
равен 1, а если я выбираю test2
, то используется строка в tol_tb
, где tol_id
равен 2
Как я могу сделать так, чтобы когда я select
test1, то значения, которые я использую внутри tol_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
<select class="form-control" name="type" id="exampleFormControlSelect4">
<?php foreach ($products->getAllType() as $type) { ?>
<option value="<?= @$type->type_id ?>" selected><?= @$type->type_name ?></option>
<?php } ?>
</select>
И это мое поле ввода, когда я пишу меру
<div class="form-group col-2">
<label for="A_maal">A: Mål</label>
<?=@$error['A_maal']?>
<input type="text" name="A_maal" id="A_maal" class="form-control" value="<?= @$_POST['A_maal'] ?>">
</div>
, а затем у меня есть этот фрагмент кода, который делает так, что я не получаю неопределенную ошибку индекса, если поле ввода пусто,
$A_maal = isset($_POST['A_maal']) ? $_POST['A_maal'] :$tol->tol_m_A_maal + $tol->tol_p_A_maal * 0.5;
все пока здесь работает как надо.Это та часть, которую мне не удалось заставить работать.
, поэтому идея в том, что я хочу, чтобы она использовала выбранный тип.чтобы решить, какой допуск используется.Я перепробовал много вещей без какого-либо успеха.вот моя последняя попытка,
foreach ($products->getAllTol() as $tol) {
if ($tol->tol_m_A_maal > ($A_maal) || $tol->tol_p_A_maal < ($A_maal)){
include './includes/modal.php';
$notification->setTolaranceErrorNotification();
}
}
Короче говоря.Мне нужно, чтобы тип был селектором допуска.
Надеюсь, что это редактирование лучше объяснит мою проблему.
Лучше объяснил настройку базы данных
У меня есть2 таблицы.
Одна называется type_tb
, а другая tol_tb
type_tb
имеет столбцы: type_id
, type_name
, есть 2 строкив этой таблице атм.
id:1
, name:test1
id:2
, name:test2
и tol_tb
имеет столбцы: tol_id
, tol_m_A_maal
, tol_p_A_maal
.
здесь также есть 2 строки.
игнорируйте странные имена, просто помните, что m
и p
являются важной частью здесь.
m
обозначает минус - разрешено наименьшее число
p
обозначает плюс - разрешено наибольшее число
, что, я думаю, может сработать, это сделать внешний ключ иличто-то похожеено я не знаю, как я должен подключить его в моем коде.и снова любая помощь действительно ценится