【问题标题】:$variable with site_url codeigniter$variable with site_url codeigniter
【发布时间】:2014-09-16 11:47:12
【问题描述】:

我想知道是否可以将 $variable id 与 codeigniter 混合在一起。

目前只显示http://localhost/codeigniter/codeigniter-cms/0

我只需要它显示 http://localhost/codeigniter/codeigniter-cms/admin/setting 并隐藏 id 并且仍然可以访问此控制器。

但是如果创建新网站它有不同的 ID 所以不同的设置。

foreach ($results as $result) {
$data['websites'][] = array(
'website_id' => $result->website_id,
'name' => $result->name,
'url' => $result->url,
'edit'     => site_url('admin/setting') . $result->website_id
);
}

查看

<?php if ($websites) { ?>
<?php foreach($websites as $website) { ?>
<tr>
<td class="text-center"><?php if (in_array($website['website_id'], $selected)) { ?>
<input type="checkbox" name="selected[]" value="<?php echo $website['website_id']; ?>" checked="checked" />
<?php } else { ?>
<input type="checkbox" name="selected[]" value="<?php echo $website['website_id']; ?>" />
<?php } ?></td>
<td><?php echo $website['name'];?></td>
<td><?php echo $website['url'];?> </td>
<td class="text-right"><a href="<?php echo $website['website_id']; ?>" class="btn btn-primary"><i class="fa fa-pencil"></i> Edit Website</a></td>
</tr>
<?php } ?>
<?php } else { ?>
<tr>
<td class="text-center" colspan="4">NO RESULTS</td>
</tr>
<?php } ?>

【问题讨论】:

  • 您需要隐藏 id 吗? (您可以混淆它),您可以在 POST 中发送 id 并将其保存在会话中,但我会坚持使用带有 id 的老式 GET 请求。也看看这条路线$route['admin/setting/(:num)'] = "";
  • 使用 POST 表单。除非是公开的,否则不要公开 id。
  • POST 也是公开的:)
  • 只是当我创建一个新的网站/商店配置文件时它仍然应该将我发送到管理员/设置但如果它有一个网站/商店有一个新的 id 它应该让我添加单独的信息到 db这就是我将行 ID 放在 href 中的原因。

标签: codeigniter


【解决方案1】:

我现在可以查看链接更改了控制器上的编辑并在模型 result_array 而不是结果上进行。链接工作正常。

'edit' => site_url('admin/setting', $result['website_id'])

控制器更新

$results = $this->model_website->getWebsites();

foreach ($results as $result) {
$data['websites'][] = array(
'website_id' => $result['website_id'],
'name' => $result['name'],
'url' => $result['url'],
'edit'     => site_url('admin/setting', $result['website_id'])
);
}

模型更新

function getWebsites() {
        $this->db->order_by('url', 'asc');

        $query = $this->db->get('website');

      if($query->num_rows() > 0) {

        return $query->result_array();
      } else {
        return false;
      }
  }

【讨论】:

    猜你喜欢
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-29
    • 1970-01-01
    • 2022-12-02
    • 2018-07-14
    • 1970-01-01
    相关资源
    最近更新 更多