根据单元格db状态禁用按钮

时间:2016-10-06 23:54:33

标签: php mysqli

我的代码无效。我试图根据表格单元格中的数据禁用按钮。这是我桌子的一个例子。

 Table A (tickets)
*----------------*
| id | repair_id |
|  1 |  10, 11   |
|  2 |    12     |
*----------------*

和我目前的代码:

<?php
    $sql =  "SELECT repair_id FROM tickets WHERE t_id =".$ticket_id." ";
    $sql .= "AND repair_id REGEXP ',' ";

        $box_check = mysqli_query($connection, $sql);
        $box_empty = mysqli_fetch_array($box_check);
            if(count($box_empty) == 0) {
                echo "<button class='btn btn-primary' disabled='disabled' name='add_box'>Add Box</button>";
            } else {
                echo "<button class='btn btn-primary' type='submit' name='add_box'>Add Box</button>";
            }
?>

我的目标是只要id中有repair_idif(count($box_empty) == true/false/0/1),就可以激活此框。

目前,该框已被禁用或启用,具体取决于我是否设置了{{1}}。

1 个答案:

答案 0 :(得分:0)

现在,... REGEXP ', '仅选择具有多个修复ID的行。根据您的问题,

  

我的目标是只要在repair_id中有超过1个ID,就允许该框处于活动状态。

使用不SELECT的简单REGEX查询,并使用strpos()函数检查repair_id列是否包含多个修复ID,然后显示相应的按钮,如下:

$sql =  "SELECT repair_id FROM tickets WHERE t_id =".$ticket_id;

$result = mysqli_query($connection, $sql);
while($row = mysqli_fetch_array($result)){
    if(strpos($row['repair_id'], ",") === false) {
        echo "<button class='btn btn-primary' disabled='disabled' name='add_box'>Add Box</button>";
    } else {
        echo "<button class='btn btn-primary' type='submit' name='add_box'>Add Box</button>";
    } 
}