Javascript Codeigniter-编码、解码JSON
有两个表,如Package和PackageService。主表为包装表。我在package.packageService=packageService.packageServiceId之间连接了这些表。我想用JSON使用id在包表中保存一些数据。我有一个编辑页面。我想当我编辑一些软件包时,我可以选择一些带有复选框的软件包多个功能,然后我可以在软件包视图和软件包编辑视图中显示这些功能。如何使用JSON清楚地做到这一点 我的模型:Javascript Codeigniter-编码、解码JSON,javascript,php,json,codeigniter,codeigniter-3,Javascript,Php,Json,Codeigniter,Codeigniter 3,有两个表,如Package和PackageService。主表为包装表。我在package.packageService=packageService.packageServiceId之间连接了这些表。我想用JSON使用id在包表中保存一些数据。我有一个编辑页面。我想当我编辑一些软件包时,我可以选择一些带有复选框的软件包多个功能,然后我可以在软件包视图和软件包编辑视图中显示这些功能。如何使用JSON清楚地做到这一点 我的模型: public function packages() {
public function packages()
{
$this->db->select_max('packageId', 'MaxPackageId');
$this->db->select('IF(packageParent = 0, packageId, packageParent) as parent', FALSE);
$this->db->from('package');
$this->db->group_by('parent');
$subquery = $this->db->get_compiled_select();
$this->db->reset_query();
$this->db->select('package.*, packageService.*');
$this->db->from('package');
$this->db->join("($subquery) t1","t1.MaxPackageId = package.packageId");
$this->db->join('packageService', 'package.packageService = packageService.packageServiceId', 'LEFT');
$query = $this->db->get();
return $query->result();
}
包视图:
<section id="main-content">
<section class="wrapper site-min-height">
<!-- page start-->
<div class="row">
<!--price start-->
<div class="text-center feature-head">
<h1> PACKAGES </h1>
<p>Choose Your Special Package Plan. </p>
</div>
<?php foreach($packs as $get) { ?>
<div class="col-lg-3 col-sm-3">
<div class="pricing-table <?php if ($get->packageNameEn == 'Platinum') { echo 'most-popular'; } ?>">
<div class="pricing-head">
<h1> <?php echo $get->packageNameEn; ?> </h1>
<h5><del>€ <?php echo $get->packagePrice ?></del></h5>
<h2><span class="note">€</span> <?php echo $get->packagePriceCut ?> </h2>
</div>
<ul class="list-unstyled">
// I want to show package features with JSON here <?php echo $get->packageServiceNameEn ?>
</ul>
<div class="price-actions">
<a class="btn" href="javascript:;">Get Now</a>
<a class="btn" href="<?php echo base_url("package/edit/$get->packageId"); ?>">Edit</a>
</div>
</div>
</div>
<?php } ?>
</div>
<!-- page end-->
</section>
</section>
<!--main content end-->
包装
选择您的特别套餐计划
我想您不想将packageService
表中的ID列表保存为feautures。
使用此选项,您需要删除此行
$this->db->join('packageService', 'package.packageService = packageService.packageServiceId', 'LEFT');
当您想显示这些警告时:
在控制器中:
// get all feautures
$this->data['feautures'] = $this->db->get('packageService')->result();
在你看来:
<ul class="list-unstyled">
// I want to show package features with JSON here
<?php
$get->packageService = json_decode($get->packageService);
foreach ($feautures as $key=> $feauture) {
if(in_array(feauture->packageServiceId, $package->packageService))
echo $feauture->packageServiceNameEn ;
}
?>
</ul>
//我想在这里展示带有JSON的包特性
为此,packageService
必须是id为packageService
表的json字符串 不是100%确定你在问什么。您想使用JSON本身中的ID将JSON存储在数据库中吗?或者只是在数据库中简单地存储JSON?我想在数据库中简单地存储JSON,比如[“1”][“2”]等等。您想在列中插入JSON吗?只需json\u编码
并插入即可。是否要序列化()
数据并将其插入列中?就这么做?我怎么做?我知道这个问题已经得到了回答,但你可以在数据库中创建一个“mediumtext”或“longtext”列,并像存储其他内容一样存储它。问题是很难使用JSON数据来帮助数据库中的任何查询,比如搜索特定的键