标签: codeigniter

我应该在视图,控制器或模型中加粗文本吗?(Codeigniter,并非特定于它)

让我们参考Yelp上的" 排序依据 "部分:

我有3个anchor()函数生成3个链接.当选择"排序依据"选项之一时,我想删除超链接/锚点()并将其加粗以显示它被选中,就像在上面的页面上一样.

现在我正在考虑对$ arr执行uri_to_assoc(),因为所选的选项将在url中,如controller/function/sort_by/best_reviews/..,然后基于什么是键(best_reviews)或元素(sort_by) ,在视图中使用以下代码

<?php
$arr = uri_to_assoc(3);

if($arr['sort_by'] == 'best_reviews') {
    echo "<strong>Best Reviews</strong>";
} else {
    anchor('controller/function/sort_by/best_reviews', 'Best Reviews');
]
?>
Run Code Online (Sandbox Code Playgroud)

现在我相信MVC的想法是在视图中保留一些PHP代码(逻辑代码?).在这种情况下,您是将上面的代码放在视图中,还是在控制器/模型中使用该逻辑然后传递最终代码以在数组中显示(echo或anchor())并在视图中回显数组?.

.

迷你问题(PHP)

如果在url中不存在/ sort_by/variable的情况下未定义$ arr ['sort_by'],则语句if($ arr ['sort_by'] =='best_reviews')将给出错误.您是否将所有上述代码嵌套在if(isset($ arr ['sort_by'])){}中?

php model-view-controller codeigniter

0
推荐指数
1
解决办法
467
查看次数

Codeigniter - 检查是否发出了GET请求

我正在使用CodeIgniter来编写一个网站...我理解现在使用$ _GET请求就像www.website.com/function/value ..并且在控制器中获取一个url段是这样写的:

$userId = $this->uri->segment(3, 0);
Run Code Online (Sandbox Code Playgroud)

我只是想知道,当控制器加载时,我想检查是否有任何uri段,如果有则推送到一个视图,否则如果没有uri段推送到另一个.

那可能吗?

干杯.

php codeigniter

0
推荐指数
1
解决办法
4191
查看次数

PHP代码点火器数据库错误

无法弄清楚这里有什么问题:

class Model_form extends CI_Model
{
  function __construct()
  {
        // Call the Model constructor
        parent::__construct();
  }

  function add_tree()
  {
    $v_treename = $this->input->post('f_treename');
    $v_treedesc = $this->input->post('f_treedesc');
    $v_treeid = $v_treename;
    $this->db->query("INSERT INTO trees (index, tree_name, tree_desc, tree_id) VALUES (NULL, '$v_treename', '$v_treedesc', '$v_treeid') "); //PROBLEM OCCURS HERE
} 
Run Code Online (Sandbox Code Playgroud)

得到此错误:

A Database Error Occurred
Error Number: 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'index, tree_name, …

php codeigniter

0
推荐指数
1
解决办法
960
查看次数

上次编辑条目的UNIX时间戳

在Expression Engine中,{edit_date}标记不会像返回的那样返回UNIX时间戳{entry_date}.为了解决这个问题,我使用了以下方法.

有没有人知道如何使这更容易?

{exp:channel:entries channel="pieces" limit="1" track_views="three"}
<?php
$edit_date_string = {edit_date};
$edit_date = NULL;
if(!isset($edit_date_string)) {
  $edit_date = {entry_date};
} else {
  // Date format: 2011 05 25 00:53:44
  // Raw: 20110525005344
  $hour   = substr($edit_date_string, -6, 2);
  $minute = substr($edit_date_string, -4, 2);
  $second = substr($edit_date_string, -2, 2);
  $day    = substr($edit_date_string, -8, 2);
  $month  = substr($edit_date_string, -10, 2);
  $year   = substr($edit_date_string, -12, 2);
  $edit_date = mktime($hour, $minute, $second, $month, $day, $year);
}
echo $edit_date;
?>
{/exp:channel:entries}
Run Code Online (Sandbox Code Playgroud)

作为旁注,似乎这是一种不一致,这使得处理和比较日期变得更加困难.这可能是一个很好的理由.有人知道吗?谢谢

php codeigniter expressionengine

0
推荐指数
1
解决办法
431
查看次数

这个Codeigniter代码是否正确?

我花了大量时间浪费时间从头开始做所有事情,我刚开始看PHP框架.一位朋友推荐给我后,我想我会给Codeigniter一个.

我完成了第一个教程并且没有任何问题,但我遇到了第二个问题.

起初我的代码与教程相同:

<?php


class Blog extends CI_Controller{


    function Blog()
    {

        parent::CI_Controller();

        $this->load->scaffolding('entries');
    }


    public function index(){

        $data['title'] = "My Blog Title";
        $data['heading'] = "An intresting title";


        $data['todo'] = array('create media player','design site','finish project');

        $this->load->view('blog_view',$data);
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

但是我收到了内部服务器错误.查看用户指南后,它显示了使用构造函数的不同方法.

我将代码更改为文档规范.

<?php


class Blog extends CI_Controller{


    public function __construct() {

        parent::__construct();

        $this->load->scaffolding('entries');
    }




    public function index(){

        $data['title'] = "My Blog Title";
        $data['heading'] = "An intresting title";


        $data['todo'] = array('create media player','design site','finish project');

        $this->load->view('blog_view',$data);
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

但我仍然得到一个内部错误.我不知道我的代码是错误还是我错误配置了其他内容.一些建议会很好,谢谢.

编辑:澄清 - 当我将构造函数添加到类时,我只收到内部错误.

php codeigniter

0
推荐指数
1
解决办法
335
查看次数

CodeIgniter的XSS过滤器为什么不清除所有?

为什么CodeIgniter的XSS过滤器只通过特定事物的正则表达式做出反应,而不是首先清理所有输入,无论内容是否被污染?另外,为什么在输入期间而不是在输出上完成(就像它应该是?)

xss codeigniter

0
推荐指数
1
解决办法
3383
查看次数

在PHP中的子域共享会话

我正在使用CI.我想在子域上共享会话而我正在使用数据库来存储会话

我试过这个

ini_set('session.cookie_domain', substr($_SERVER['SERVER_NAME'],strpos($_SERVER['SERVER_NAME'],"."),100));

if(session_id ==''){session_start();}
Run Code Online (Sandbox Code Playgroud)

这意味着xycom和zycom将使用常见的会话帮助我,请

php subdomain session codeigniter

0
推荐指数
2
解决办法
9140
查看次数

在php foreach之后设置选定的值

目前,我使用以下代码填充选择框:

<select name="klas_jaar" value="{jaar_id}">
    <?php foreach ($jaren as $jaar):?>
        <option value="<?=$jaar->jaar_id?>"><?=$jaar->schooljaar?></option>
    <?php endforeach;?>
</select>
Run Code Online (Sandbox Code Playgroud)

值集与选项的值具有相同的ID.但是,当转到此页面时,它不会将请求的值设置为选中.

我究竟做错了什么?

html php codeigniter drop-down-menu

0
推荐指数
1
解决办法
5973
查看次数

S3存储桶中的子文件夹是一个对象吗?

我正在尝试使用PHP(Codeigniter)获取S3中子文件夹的大小.如果我在文件夹中指定了一个文件,则返回数据,但是如果我指定了我得到的文件夹:

[NoSuchKey] The specified key does not exist.
Run Code Online (Sandbox Code Playgroud)

我认为这意味着它无法找到文件/文件夹.文件夹不是对象,你可以得到的大小?

我已经在Windows上使用了S3浏览器,并列出了文件夹及其大小.

这是我正在使用的代码片段:

$userdir = 'userdata/'.$row->name;
$userdata = $this->s3->getObject('bucket_name',$userdir,false);

foreach ($userdata as $name => $val) {
    $totalSize += $val['size'];
}

$totalSize = ($totalSize / 1024 / 1024 / 1024);
Run Code Online (Sandbox Code Playgroud)

任何想法赞赏!

谢谢!

php codeigniter amazon-s3

0
推荐指数
1
解决办法
2374
查看次数

CodeIgniter:在DB中存储会话,如何知道会话来自哪个?

我正在考虑将CI会话存储在数据库中,这样我就可以显示当前有多少用户在线,谁具体在线等等.

查看http://codeigniter.com/user_guide/libraries/sessions.html,我是否理解信息将存储在表格的user_data列中ci_session?意思是,也许我只是将用户的id存储在那里?

codeigniter

0
推荐指数
1
解决办法
3465
查看次数