duandaotuo5542 2011-06-29 10:46
浏览 62
已采纳

Php while Array中的循环错误,连接到Postgresql数据库

I have a static code to update some select boxes.

The original structure code:

$result = "
      ({ 
        'options': [
          {'value': '','description': '(pick an item)'}, 
          {'value': 'test','description': 'test'}, 
          {'value': 'test_2','description': 'test_2'}
        ]
      });
    ";

I'm trying to make this dynamic and connect to my table in Postgresql Database but my code don't works.

Here is My Code:

if($value=="asus"){

    require("includes/connection.php");

    $sth = $dbh->prepare( "SELECT * FROM mapa_ferias WHERE area = 'Asus' " );
    $sth->setFetchMode(PDO::FETCH_ASSOC);
    $sth->execute();

    $result = "
    ({
      'options': [";

            while($row = $sth->fetch()) { 
            $result += "{'value': '" + $row['nome'] + "','description': '" + $row['nome'] + "'},";
    }

    $result += 
            "]
        });
    ";
  }

I hope you can help me. Thanks in advance.

  • 写回答

1条回答 默认 最新

  • duanmie9741 2011-06-29 11:02
    关注

    Please do not try to build JSON data yourself.. PHP has a function for it: json_encode()

    if ($value=="asus"){
    
        require("includes/connection.php");
    
        $sth = $dbh->prepare( "SELECT * FROM mapa_ferias WHERE area = 'Asus' " );
        $sth->setFetchMode(PDO::FETCH_ASSOC);
        $sth->execute();
    
        $options = array();
        while($row = $sth->fetch()) { 
            $options[] = array(
                'value' => $row['nome'], 
                'description' => $row['nome']
            );
        }
        $sth->closeCursor();
    
        $result = '('.json_encode(array(
            'options' => $options
        )).')';
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题
  • ¥15 ad5933的I2C
  • ¥15 请问RTX4060的笔记本电脑可以训练yolov5模型吗?
  • ¥15 数学建模求思路及代码
  • ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题