php - 如果两个表中都存在相同的 ID,如何从 Select DropDown 中隐藏选项
问题描述
我正在使用基于 MVC 结构的 PHP,我有 2 个表sale
& receipt
,当用户想要制作时,receipt
他/她将选择下拉选项,Sale No.
来自DB
sale
表,其值为sale_id
,以便用户recept
代表制作sale
并sale_id
存储在receipt
表中,我想实现,如果sale_id
存在于receipt
表中,从选择下拉选项中隐藏该选项。
就像在下面的图像中一样,我有3 sale
记录和1 receipt
记录,receipt
记录包含sale_id
,我想Sale No.
从选择下拉选项中隐藏它。
选择选项Receipt
<select class="form-control" id="sale_id" name="sale_id">
<option disabled selected value="">Select One</option>
<?php foreach($sales as $sale): ?>
<option value="<?php echo $sale['sale_id']; ?>" <?php echo ($sale_id==$ sale[ 'sale_id']? 'selected="selected"': ''); ?>>
<?php echo $sale['sale_no']; ?> =>
<?php echo $sale['customer_name']; ?>
</option>
<?php endforeach; ?>
</select>
我的收据控制器:我如何在下拉选项中从销售表中获取数据
$this->model['sale'] = $this->load->model('sale/sale');
$this->data['sales'] = $this->model['sale']->getRows();
我的收据模型
class ModelTransactionReceipt extends HModel {
protected function getTable() {
return 'receipt';
}
protected function getView() {
return 'vw_receipt';
}
public function getMaxReceiptNo(){
$sql = "SELECT MAX(receipt_no) as max_no FROM `receipt`";
$query = $this->db->query($sql);
$record = $query->row;
if(empty($record['max_no'])) {
$max_no = 1;
} else {
$max_no = $record['max_no']+1;
}
return $max_no;
}
public function getRemainingSale() {
$sql = "SELECT sale_id";
$sql = " FROM `sale`";
$sql = " WHERE sale_id NOT IN (SELECT sale_id FROM `receipt`)";
$query = $this->db->query($sql);
$record = $query->row;
}
}
解决方案
我在我的Sale Model
:
public function getRemainingSale() {
$sql = "SELECT `sale_id`,";
$sql .= " `sale_no`,";
$sql .= " `customer_name`,";
$sql .= " `sale_amount`";
$sql .= " FROM sale";
$sql .= " WHERE sale_id NOT IN (SELECT sale_id FROM `receipt`)";
$query = $this->db->query($sql);
$record = $query->rows;
return $record;
}
并Sale Model
使用该函数调用receipt controller
:
$this->model['sale'] = $this->load->model('sale/sale');
$this->data['sales'] = $this->model['sale']->getRemainingSale();
// d($this->data['sales'],true);
推荐阅读
- sql - SQL:在日期范围内每月生成记录
- java - 将其存储为 URL 时,图像未从 SQLite 显示
- javascript - 克隆模型后,Backbone get set 抛出错误?
- typo3-8.x - Powermail (6.0.0) 中基于字符串的动态接收器
- jquery - jQuery 可排序 - 创建时
- java - 在 Java 中查找 4 个 CheckBox 的有序选择
- django - 如何将 Python 变量传递给 Django 中另一个应用程序中的模板
- node.js - 未找到 Google Calendar API 错误
- php - 尝试访问 Apache 上的文件时权限被拒绝
- powerbi - 在 Power Query M 函数中声明变量