【问题标题】:How to insert json encoded inputs into foreign related tables如何将 json 编码的输入插入到外部相关表中
【发布时间】:2012-12-10 11:37:16
【问题描述】:

我正在 yii+extjs 中创建功能。我的客户端在 extjs 中设计,服务器端在 yii 框架中。 我有两张桌子 投票选项 -pollId -optionId -PollQuestion -选项 -pollId

现在通过将在 extjs 中的投票创建表单,问题及其相关选项以 json 格式发送到服务器。所以在 yii 框架中,在 actionCreate 函数中会得到输入——

$json='{"pollId":1,"PollQuestion":"Who is the best 
cricketer","option":"ABC","option":"DEF","option":"XYZ"}'
$obj=json_decode($json);

在创建民意调查期间,用户可以输入任意数量的选项。所以选项的数量可以是任意数量。 我正在 Pollcontroller 中创建上述功能。 所以这个新创建的问题被插入到投票表中=

$model=new Poll();
           $model->pollId=$obj->pollId;
           $model->PollQuestion=$obj->PollQuestion;

现在我想将所有这些新选项放在具有相同 pollId 的选项表中。那么如何在选项表中添加所有这些选项呢?请帮帮我

【问题讨论】:

    标签: json extjs yii


    【解决方案1】:

    我将从修改 JSON 开始,因此选项是 pollquestion JSON 中的一个单独的 JSON。 像这样的...

    $json='{"pollId": 1,"PollQuestion": "Who is the best cricketer",
            "options":{[{"value":"ABC"},{"name": "DEF"},{"name": "XYZ"}]}';
    

    这样,当您使用 json_decode 对其进行解码时,您将获得一个选项数组,您可以通过该数组并将该数组中的每个元素添加到选项数组中。

    for($i=0; $i<sizeof($obj['options']);$i++){
        //Add to table logic here
    }
    

    【讨论】:

    • 感谢先生的回复...实际上先生,我想将这些选项放在选项表中。那么先生如何使用 $json 获得第一个选项?请帮帮我
    • 先生,如果我按照上面的方式进行更改,它会给我上面的 for($i=0; $ioptions);$i++){} 循环错误。错误是试图获取非对象的属性。那我需要做什么?
    • 对...我的错...它的 $obj['options'] 不是 $obj->options...试试这个
    猜你喜欢
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    • 2021-12-10
    • 2017-04-02
    • 1970-01-01
    • 2021-10-29
    • 2018-07-18
    • 1970-01-01
    相关资源
    最近更新 更多