【问题标题】:mysql_fetch_array() coming with strange outputmysql_fetch_array() 带有奇怪的输出
【发布时间】:2014-11-26 23:21:03
【问题描述】:

我在这里有一个完全的嗡嗡声。 我试图从mysql_fetch_array() 的查询中获得结果,但它带来了 from 值。这是一个简单的例子:

这是查询:

$query = SELECT COUNT(*) AS total FROM rese WHERE usua_cod = '{$user_cod}';

这是“数据库工具”上的查询输出:

这是 PHP 代码:

        $sql_check = mysql_query($query) or die( mysql_error());

        if($sql_check)
        {
            $result_check = mysql_fetch_array($sql_check);
            if($result_check[0] > 0)
            {
                //Erro 
                    $Result = array('Resultado'=>"NO",
                                    "msg"=>"Você já possui uma reserva neste horário",
                                    'debug'=>$result_check[0],
                                    'query'=>"$query",
                                    'res1'=>$result_check);

                    $arrayOfChildren[] = $Result;
                    $myJSON = json_encode($arrayOfChildren);
                    echo($myJSON);
            }
            else
            {
              // DOES THE INSERT CODE
            }
        }

在 Xcode 控制台上我得到了这个:

2014-11-26 21:10:00.784 ezmall[1250:423465] dict : (
        {
        Resultado = NO;
        debug = 1;
        msg = "Voc\U00ea j\U00e1 possui uma reserva neste hor\U00e1rio";
        query = "SELECT COUNT(*) AS total FROM rese WHERE usua_cod = '{$user_cod}'";
        res1 =         {
            0 = 1;
            total = 1;
        };
    }
)

所以我认为有些东西搞砸了,因为“res1”上的“0”应该是“total”而不是索引的结果。那么,有什么想法吗?

干杯。

【问题讨论】:

  • var_dump($sql_check); 打印?你有没有看到manual 上的那个大红框,它的存在是有原因的;)
  • 警告:这是非常不安全的,因为这些参数不是properly escaped。您应该绝不$_POST 数据直接放入查询中:它会创建一个巨大的SQL injection bugmysql_query 是一个过时的接口,不应使用,它已从 PHP 中删除。像PDO is not hard to learn 这样的现代替代品。 PHP The Right Way 之类的指南解释了最佳实践。
  • 你可以看到link

标签: php ios mysql sql


【解决方案1】:

mysql_fetch_array() 创建一个包含数字和命名结果列键的结果数组,因此每个结果值将在那里出现两次。因此,您看到的 0 是“结果列 0”的索引。

您想改用mysql_fetch_row()mysql_fetch_assoc(),具体取决于您是否希望使用数字列ID 或列名作为键

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 2013-01-19
    • 1970-01-01
    • 2020-12-25
    • 1970-01-01
    相关资源
    最近更新 更多