0

Zend でコードを書いています。複数のチェックボックス コードを作成してデータを選択し、送信ボタンをクリックしてデータベースの情報を表示した後、コードは正常に動作しますが、データベースに到達するとフィールドに選択されたものが表示されません。代わりに、そのフィールドに「配列」と書き込みます。ここに私のフォームコードがあります..どんな提案でも大歓迎です

$Organisation_type = new Zend_Form_Element_MultiCheckbox('Organisation_type', array(
    'multiOptions' => array(
                        '1' =>' Start-up',
                        '2' =>' Sole Proprietor',
                        '3' =>' Partnership',
                        '4' =>' Close Corporation',
                        '5' =>' Company Trust',
                        '6' =>' Compny Propriety Limited',
                        '7' =>' Co-operative',
                        '8' =>' Non Profit Organization',
    )
));
$Organisation_type->setLabel('Organisation type'); 
$Organisation_type->setValue(array('Start-up', 'Sole Proprietor', 'Partnership', 'Close Corporation', 'Company Trust', 'Compny Propriety Limited', 'Co-operative', 'Non Profit Organization'));
4

2 に答える 2

0

チェックボックス グループは常に配列を返します...これはチェックボックスの配列です。

このデータを 1 つの列に格納する場合は、別の形式に変換する必要があります。

これを行う最も簡単な方法は、配列またはオブジェクトを JSON 文字列に変換することです

配列を JSON にエンコードするには:

    $json = json_encode($array);

JSON をデコードして配列に戻すには:

    $array = json_decode($json);

Zend ラッパー Zend_Json を使用してこれを行うこともできます: http://framework.zend.com/manual/1.12/en/zend.json.html

于 2013-10-29T22:26:23.620 に答える
0

DBに保存する変数の内容に注意する必要があります。そのためには、var_dump($var); を試す必要があります。

于 2013-10-29T15:09:31.790 に答える