Javascript Codeigniter-编码、解码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() {

有两个表,如Package和PackageService。主表为包装表。我在package.packageService=packageService.packageServiceId之间连接了这些表。我想用JSON使用id在包表中保存一些数据。我有一个编辑页面。我想当我编辑一些软件包时,我可以选择一些带有复选框的软件包多个功能,然后我可以在软件包视图和软件包编辑视图中显示这些功能。如何使用JSON清楚地做到这一点

我的模型:

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数据来帮助数据库中的任何查询,比如搜索特定的键