标签: codeigniter

CodeIgniter - 在请求标头中打印自定义值

如何使用CodeIgniter打印在收到的请求的标题中设置的值?

我试过print_r($_SERVER);哪个对我不起作用.我希望使用CI的方式不同.

php codeigniter codeigniter-2 codeigniter-3

5
推荐指数
1
解决办法
8266
查看次数

错误"无法读取长值,太大了"Memcached

我在我的网站上使用Codeigniter.我已经尝试设置memcached来缓存来自数据库的对象,当它运行时,我看到了这样的警告:

错误 - 2016-01-12 00:28:40 - >严重性:警告 - > Memcached :: get():无法读取长值,太大/ var/www/CodeigniterProject/system/libraries/Cache/drivers /Cache_memcached.php 149

我怎样才能解决这个问题?

memcached codeigniter

5
推荐指数
2
解决办法
1404
查看次数

Codeigniter第4级路线无法正常工作

routes.php文件


    $route['admin/news'] = 'admin_news/index'; //working
    $route['admin/news/(:any)'] = 'admin_news/view/$1'; //working
    $route['admin/news/create'] = 'admin_news/create'; //working
    $route['admin/news/edit/(:any)'] = 'admin_news/edit/$1'; //not-working
    $route['admin/news/delete/(:any)'] = 'admin_news/delete/$1'; //not-working

控制器:admin_news.php


    if (!defined('BASEPATH'))
        exit('No direct script access allowed');

    class Admin_news extends CI_Controller {

    public function __construct()
            {
                    parent::__construct();
                    $this->load->model('news_model');
                    $this->load->helper('url');

                    if(!$this->session->userdata('is_logged_in')){
                redirect('admin/login');
            }
            }

    public function index()
    {
            $data['news'] = $this->news_model->get_news();
            $data['title'] = 'News archive';

            $this->load->view('admin/includes/header', $data);
            $this->load->view('admin/news/index', $data);
            $this->load->view('admin/includes/footer');
    }

    public function view($slug = …

php codeigniter

5
推荐指数
1
解决办法
773
查看次数

使用get_instance()时自动完成Codeigniter

在PHPStorm中,通过向config/autocomplete.php添加包含属性的文件,我已经能够使用Codeigniter进行自动完成.PhpStorm能够读取此文件,并允许我快速导航到该功能并具有自动完成功能.在autocomplete.php中,我可以拥有@property Account_model $Account_model,然后每当我使用时$this->Account_model->xxx,自动完成工作.

使用时get_instance(),所有这些功能都会消失.例如,在辅助类中,我必须使用$CI = & get_instance();,然后$CI->Account_model->xxxx.在以这种方式引用库时,如何使自动完成工作?

[注意:这只是一个简单的例子.我的真正用法是使用PHPUnit,但解决上面的例子将允许PHPUnit也能正常工作.

php codeigniter phpstorm codeigniter-3

5
推荐指数
1
解决办法
302
查看次数

Dompdf将画布转换为pdf

我正在尝试使用填充了canvas元素的Dompdf打印PDF.

我可以毫无问题地包含和打印png图像,但是当尝试包含画布然后将其转换为png时,它将不会在导出的PDF中显示它(没有损坏的图像等).

该怎么办?

这是一个Codeigniter项目:

使用Dompdf在控制器中加载视图:

$this->load->library('pdf');
$this->pdf->load_view('print_pdf', $data);
$this->pdf->render();
$this->pdf->stream("new_pdf_file.pdf");
Run Code Online (Sandbox Code Playgroud)

要打印的视图:

<!doctype and so on..>

<canvas id="myCanvas" width="578" height="200"></canvas>

<script>
   context.beginPath();
   context.moveTo(170, 80);
   context.bezierCurveTo(130, 100, 130, 150, 230, 150);
   context.closePath();
   context.lineWidth = 5;
   context.fillStyle = '#8ED6FF';
   context.fill();
   context.strokeStyle = '#0000ff';
   context.stroke();

   var canvas = document.getElementById("myCanvas");
   var img = canvas.toDataURL("image/png");

   $(document).ready(function() {
      $('<img />', { 
         src: img
      });
      img.appendTo($('#testDiv'));
   });
</script>

<div id="testDiv">

</div>

<../html>
Run Code Online (Sandbox Code Playgroud)

php codeigniter canvas dompdf

5
推荐指数
1
解决办法
1826
查看次数

类激活不在页面上工作

我知道这个问题很多,但我只是无法弄清楚如何使用已经回答的帖子来做到这一点.在这里,我在一个页面上有不同的菜单.当我点击每个菜单时,我希望该菜单处于活动状态,但此处不起作用.

这是我的浏览页面:

<ul class="nav navbar-nav navbar-right">
  <li class="active"> <a class="page-scroll" href="<?php echo base_url();?>nowaste_control/index#about">About</a> </li>
  <li class=""><a class="page-scroll" href="<?php echo site_url('nowaste_control/index#product'); ?>">Products</a> </li>
  <li  class=""> <a class="page-scroll" href="<?php echo base_url();?>nowaste_control/index#technology">Technology</a> </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

这是我的jQuery:

<script type="text/javascript">
$('.nav navbar-nav li a').click(function($) {
  $('a[href="'+window.location.pathname+window.location.hash+'"]').parent().addClass('active');
});
</script>
Run Code Online (Sandbox Code Playgroud)

php jquery codeigniter

5
推荐指数
1
解决办法
1252
查看次数

CodeIgniter 3.0.6中的SQLite3

我找不到有关如何在CodeIgniter中使用sqlite3的任何文档,但它确实说它受支持.

这是我当前的数据库配置:

$db['default']['hostname'] = '';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = 'db/base.db';
$db['default']['dbdriver'] = 'sqlite3';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
Run Code Online (Sandbox Code Playgroud)

但是我在页面加载时遇到了非常不合理的错误

Unable to connect to your database server using the provided settings.

Filename: core/CodeIgniter.php

Line Number: 500
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,为什么我的配置不起作用,我怎样才能使它工作?

php sqlite codeigniter

5
推荐指数
1
解决办法
9826
查看次数

找不到Codeigniter控制器

我已经在codeigniter中创建了一个控制器。问题是,当我在url中击中控制器名称和函数名称时,它给了我找不到404的错误。我是Codeigniter的新手,我不明白我要去哪里错了

这是我的控制器

<?php
if(!defined('BASEPATH')) exit('No direct script access allowed');

class Home extends CI_Controller{

function __construct(){
parent::__construct();
}

function you(){
$this->load->view('home_view');
}

}
?>
Run Code Online (Sandbox Code Playgroud)

我的看法是这样的

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>My First CodeIgniter Practice</title>
 </head>
 <body>
 <h1> HELLO CI Buddy...!</h1>
 </body>
 </html>
Run Code Online (Sandbox Code Playgroud)

我在codeigniter上创建了我的第一个项目,我陷入了这个问题。我已经尝试了stackoverflow的大多数解决方案,然后问了这个问题。因此,我的要求是不要重复添加此问题。我想解决我的问题。任何帮助都是可观的

谢谢

php codeigniter

5
推荐指数
2
解决办法
1万
查看次数

在路由中使用连字符( - )代替斜杠(/)或下划线(_)

我正在使用Codeigniter 3.x,使用routes.php我想创建动态路由,例如我有一个类名Class1.

我想要输出网址

mysite.com/Class1-Student-Search

但是使用连字符( - )不起作用

如果我放斜杠(/),它可以工作,

$route['(:any)/Student-Search']  = "search";
Run Code Online (Sandbox Code Playgroud)

它返回

mysite.com/Class1/Student-Search

并使用下划线(_)也可以工作.

$route['(:any)_Student-Search']  = "search";
Run Code Online (Sandbox Code Playgroud)

回报

mysite.com/Class1_Student-Search

但我想使用连字符( - ),如果我把它,它将转到404错误页面,我使用这四个解决方案,但不适合我.

$route['(:any)-Student-Search']  = "search";
$route['([a-zA-Z]+)-Student-Search']  = "search";
$route['([a-zA-Z-0-9]+)-Student-Search']  = "search";
$route['(.*)-Student-Search']  = "search";
Run Code Online (Sandbox Code Playgroud)

如果我硬编码路线中的值

$route['Class1-Student-Search']  = "search";
Run Code Online (Sandbox Code Playgroud)

然后它也工作

php routes codeigniter

5
推荐指数
1
解决办法
725
查看次数

通过dompdf用codeigniter生成的pdf电子邮件

我有一个从Codeigniter中的html视图生成的PDF,现在我想将其发送到我的电子邮件中,但是我遇到的麻烦是它显示中有一个字符串,$pdf但是在我的电子邮件中发送时为空。这是整个Codeigniter函数。

public function generatePDF()
{
    require_once(APPPATH.'third_party/dompdf/dompdf_config.inc.php');

    $dompdf = new Dompdf();
    $msg = $this->load->view('credit_agreement_view', '', true);
    $html = mb_convert_encoding($msg, 'HTML-ENTITIES', 'UTF-8');
    $dompdf->load_html($html);
    $paper_orientation = 'Potrait';
    $dompdf->set_paper($paper_orientation);

    // Render the HTML as PDF
    $dompdf->render();
    $pdf = $dompdf->output();

    // sending the pdf to email
    $this->load->library('email');
    $config['protocol'] = 'smtp';
    $config['smtp_host'] = 'ssl://smtp.gmail.com';
    $config['smtp_port']    = '465';
    $config['smtp_timeout'] = '7';
    $config['smtp_user']    = 'support@aurorax.co';
    $config['smtp_pass']    = '#######';
    $config['charset']    = 'utf-8';
    $config['newline']    = "\r\n";
    $config['mailtype'] = 'text'; // or html
    $config['validation'] = TRUE; // bool whether …
Run Code Online (Sandbox Code Playgroud)

php pdf codeigniter dompdf

5
推荐指数
1
解决办法
1903
查看次数