我正在使用magento 1.7版本。在此我有一个数组中的数据。我使用json_encode
在json中对此进行编码并插入到数据库中。但我得到的错误就像
连接已重置。
如果我插入正常值,那么它工作正常。
在数据库中,我有字段类型longtext
。我使用mysql_real_escape_string()
,base_63_encode()
,serialize()
但未成功。
我正在使用以下代码
$table = Mage::getSingleton('core/resource')->getTableName('checkout_prescription_details');
$write = Mage::getSingleton('core/resource')->getConnection('core_write');
$custom = json_encode($customoptions);
$query = "insert into {$table} set `data`='$custom';
$write->query($query);
当我echo $query
时,它显示编码数据,当我从phpmyadmin插入它时,它插入数据库但使用$write->query($query);
这不是插入数据库。
请对此提出建议。
答案 0 :(得分:5)
参见Magento的核心JSON编码和解码功能
编码数组
法师::助手( '核心') - > jsonEncode($阵列);
解码数组
法师::助手( '核心') - > jsonDecode($ jsonData);
Mage::getModel('checkout/prescription_details')
->setData('data', Mage::helper('core')->jsonEncode($customoptions))
->save();
答案 1 :(得分:1)
checkout/prescription_details
:Mage::getModel('checkout/prescription_details')
->setData('data', json_encode($customoptions))
->save();
如果没有型号,请继续创建一个型号。没有相应的模型,您不应该拥有数据库表。