当我选择一个选项时,我可以选择要在其中自动填充Tolminus和Tolplus的输入字段的位置。我该怎么办?
这是我尝试过的:
这是我正在使用的桌子
+----+--------------+---------+----------+
| id | Varenummer | Tolplus | Tolminus |
+----+--------------+---------+----------+
| 1 | Varenummer 1 | 123 | -123 |
| 2 | Varenummer 2 | 321 | -321 |
+----+--------------+---------+----------+
这是我尝试过的代码
这是我的课程
public function getAllVarenummer(){
return $this->db->tolist("SELECT Varenummer FROM `Varenummer_tb`");
}
这是我的选择,如果没有WHERE Varenummer.id = Tolminus.id
,我将得到第一个值。
<select class="form-control" name="Varenummer" id="exampleFormControlSelect4" id="selectid">
<?php foreach ($csv->getAllVarenummer() as $csv) { ?>
<option value="<?= $csv->id ?>" selected><?= $csv->Varenummer ?></option>
<?php } ?>
</select>...
<?php
$sth = $db->prepare("SELECT `Tolminus`,Varenummer FROM Varenummer_tb WHERE Varenummer.id = Tolminus.id");
$sth->execute();
$Tolminus = $sth->fetch(PDO::FETCH_COLUMN);
?>
//Input fields
<div class="form-group col-2">
<label for="Tolminus">Tol -</label>
<?=$error['Tolminus']?>
<input type="text" name="Tolminus" id="Tolminus" class="form-control" value="<?= $Tolminus ?>">
</div>
<div class="form-group col-2">
<label for="Tolplus">Tol +</label>
<?=$error['Tolplus']?>
<input type="text" name="Tolplus" id="Tolplus" class="form-control" value="<?= $_POST['Tolplus'] ?>">
</div>
结果应该是,当我选择Varenummer 1时,Tolplus输入字段将为123,而Tolminus输入字段将为-123。
更清楚 $ csv来自class.php
class Csv extends \PDO
{
/**
* @var null
*/
private $db = null;
/**
* csv constructor.
* @param $db
*/
public function __construct($db)
{
$this->db = $db;
}
/**
* @param int $length
* @return string
*/
答案 0 :(得分:0)
检查条件是否与从数据库表中获取的值匹配。在<option>
标记中添加以下行。
if ($csv->id == $_POST['Tolplus']){
echo 'selected=selected'
}