【问题标题】:PHP/MYSQL Check database for enum value?PHP/MYSQL 检查数据库的枚举值?
【发布时间】:2014-12-12 12:20:49
【问题描述】:

我正在尝试使用 MySQL 检查表 'supplier_session' 中的枚举值 'form1_completed' 是否 = 1

所以如果 'form1_completed' 为 1,其中 'session_number' = '12345678',那么我想回显 div 1,如果它是 0,我想回显 div2。

我的桌子是这样的:

表名 = 'supplier_session'

Id   |     form1_completed    |    session_number
1                 1 (enum)         12345678
2                 0 (enum)         145456

有人可以告诉我我哪里出了问题吗?我是 MySQL 的新手,我收到了这个错误:

注意:试图在第 24 行的 C:\xampp\htdocs\hewden\ssa\suppliers\dashboard.php 中获取非对象的属性

而且它只显示 div2。

<?php include("include/config.php");

$sql = "SELECT form1_completed FROM supplier_session WHERE supplier_number = '12345678'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo '<div 1>';
    }
} else {
    echo '<div 2>';
}
 $conn->close();
 ?> 

【问题讨论】:

    标签: php mysql enums


    【解决方案1】:
    while($row = $result->fetch_assoc()) {
         if($row['form1_completed']==1){   
    echo '<div 1>';
        }
     else {
        echo '<div 2>';
    }
    }
    

    【讨论】:

    • 这给了我以下错误:致命错误:在 C:\xampp\htdocs\hewden\ssa\suppliers\dashboard.php 中的非对象上调用成员函数 fetch_assoc() 24
    【解决方案2】:

    我不确定我是否理解正确。您的表供应商会话中有哪些字段?因为通过该查询,您可以从表中获取 form1_completed 列的所有条目。

    因此,该代码应该有与 form1_completed 条目一样多的输出。只有当没有form1_completed的行时,才会有输出。

    顺便说一句:&lt;div 1&gt;&lt;div 2&gt; 甚至是有效的 html 标记?

    【讨论】:

    • 我已经用表格信息为你更新了我的问题
    • 在这种情况下,您的查询似乎没有结果。 session_number 的类型是 int 还是 char/varchar?如果是最后一种情况,则将 = 替换为 LIKE 并将您的数字放在引号中,例如 '12345678'
    • 我的 session_number 是一个 int(255) 值
    • 将您的 SQL 查询更改为 SELECT form1_completed FROM supplier_session WHERE session_number = 12345678
    【解决方案3】:

    我找到了答案,

    <?php include("include/config.php");
    
    $sql = "SELECT * FROM supplier_session";
    $result = $conn->query($sql);
    if ($result->num_rows > 0) {
        // output data of each row
    while($row = $result->fetch_assoc()) {
         if($row['questionaire']==1){   
    echo 'hello';
        }
     else {
        echo 'bye';
    }
    }
    }
     $conn->close();
     ?> 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-18
      • 1970-01-01
      • 2015-01-26
      • 1970-01-01
      • 2014-12-21
      • 1970-01-01
      相关资源
      最近更新 更多