标签: codeigniter-2

Codeigniter`没有输入文件指定`和'404页面找不到'错误

我有一个我在codeiginiter 2.0.1(我自己的个人网站)上建立的网站.我使用WAMP在本地构建了这个应用程序,它可以100%正常工作(本地).我将其上传到我的实时服务器,并且一直收到"找不到404页面"错误.这个错误来自codeigniter通过我的Home-> Error方法,而不是服务器,因此代码点火器肯定是有效的.

这是我的路线配置.如果我将404_override更改为"Home".它会加载我的家庭控制器,但是当我转到任何页面时,我找不到404页面.

$route['default_controller'] = 'Home';
$route['404_override'] = 'Home/Error';
Run Code Online (Sandbox Code Playgroud)

我怀疑这可能与我的.htaccess和Codeigniter配置有关.

// Codeigniter Config.php - Note: My Hosting is with Godaddy. [CGI/FastCGI]
$config['index_page'] = 'index.php?';
// Tried Auto and All others, REQUEST_URI works fastest for me.
$config['uri_protocol'] = 'REQUEST_URI';
Run Code Online (Sandbox Code Playgroud)

我的.htaccess

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L] 
Run Code Online (Sandbox Code Playgroud)

我通过SO和Google尝试了很多这样的链接来解决这个问题,我重复尝试的那些链接在下面.
- CodeIgniter 404找不到页面,但为什么?
- 现有的控制器上的笨404
- http://codeigniter.com/forums/viewthread/60469/#297477
- http://codeigniter.com/wiki/Godaddy_Installaton_Tips
-以及很多其他

我敢肯定这已经与htaccess和mod_rewrite,任何想法?


更新
如果我将其更改$route['404_override'] = 'Home/Error'为我的任何控制器,它们会按预期显示和工作,但由于某种原因,它总是会抛出404页面.

如果我去:/index.php/home- 我得到错误No input …

php .htaccess mod-rewrite codeigniter-url codeigniter-2

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

获取Codeigniter中数据库错误的实际行号(或文件名)

如果在codeigniter中你的sql语句出错,你会收到如下信息: -

 A Database Error Occurred

Error Number: 1096

- some sql -

Filename: \system\database\DB_driver.php

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

这一切都很好,但是当你为一个页面运行大量语句时,有助于知道哪一行代码生成了查询.

如何获取生成查询的modelmethod(或文件名)的名称?

codeigniter codeigniter-2

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

Codeigniter Datamapper自动创建更新的字段

看起来这应该是容易的部分,但我似乎无法实现这一目标.我createdupdated字段没有填充.我已经尝试将字段重命名为不同的字段,但没有去.除了架构和设置类(非常基本),如下所示,我错过了什么?

Codeigniter v2.1.2 Datamapper ORM v1.8.2.1

架构:

CREATE TABLE `users` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `created` datetime NOT NULL,
  `updated` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1
Run Code Online (Sandbox Code Playgroud)

用户类:

<?php

class User extends DataMapper
{

    function User()
    {
        parent::DataMapper();
    }

}
Run Code Online (Sandbox Code Playgroud)

php codeigniter codeigniter-2 codeigniter-datamapper

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

在Dreamweaver CS 5.5中设置codeigniter

我正在寻找有关如何在Dreamweaver CS 5.5中设置代码点火器项目的信息,其代码提示就像Zend框架一样.

dreamweaver code-hinting codeigniter-2

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

在LIMIT更改中从MySQL查询获得不一致的排序结果

我的查询(下面两个)返回不一致的排序结果,因为我增加页面(例如LIMIT 3,3到LIMIT 4,3).请参阅下面的示例图片,注意我有两个新项目,尽管只将FROM索引更改为1.

最糟糕的是,我不能始终如一地生成任何特定的排序顺序,除了第一组:LIMIT 0,6.然后LIMIT 6,6和其他变化会返回截然不同的结果.例如,如果我更改WANT值,我可以获得完全不同的项目集.

示例: http ://trackauthoritymusic.com/wwwroot/images/pagination-error-proof.jpg

环境:

  • echo mysql_get_server_info(); // 5.1.67-log
  • echo PHP_VERSION; // 5.4.14
  • character_set_client == utf8
  • character_set_connection == utf8
  • character_set_database == utf8
  • character_set_filesystem ==二进制
  • character_set_results == utf8
  • character_set_server == latin1
  • character_set_system == utf8
  • collat​​ion_connection == utf8_unicode_ci
  • collat​​ion_database == utf8_unicode_ci
  • collat​​ion_server == latin1_swedish_ci
  • 我正在使用codeigniter,但我正在使用下面看到的标准sql.
  • 在共享主机包上

查询:

SELECT S.*, G.* FROM games C LEFT JOIN songs T ON G.game_id = S.game_id WHERE G.game_status != 'deleted' and G.game_status != 'hidden' AND G.group_id = 1 GROUP BY G.game_id …
Run Code Online (Sandbox Code Playgroud)

mysql sql pagination codeigniter-2

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

错误:未定义属性$ load

我是codeigniter的新手,我开发了一个代码来对数据库进行查询.我使用$this->load->database();并执行查询来加载数据库,但是当我运行代码时,浏览器会给我以下错误消息:

A PHP Error was encountered Severity: Notice Message: Undefined property: Tutorial::$load.
Fatal error: Call to a member function database() on a non-object
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

class Tutorial extends CI_Controller {
    public function tutorial() {
        $this->load->database();
        $query = $this->db->query('SELECT user,pass,email FROM tablex');
        foreach ($query->result() as $row) {
            echo $row->title;
            echo $row->name;
        }
Run Code Online (Sandbox Code Playgroud)

我确信$db我的数据库配置文件中的变量已正确设置,我甚至尝试为autoload.php配置文件中的所有页面自动加载数据库; 仍然有同样的问题.任何想法如何去做?

php mysql codeigniter-2

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

如何捕获Uncaught SoapFault异常

我收到以下错误.怎么了?我如何捕获或解决此异常.

致命错误:未捕获的SoapFault异常:[a:InternalServiceFault]由于内部错误,服务器无法处理请求.有关错误的更多信息,请在服务器上启用IncludeExceptionDetailInFaults(来自ServiceBehaviorAttribute或配置行为)以将异常信息发送回客户端,或者根据Microsoft .NET Framework 3.0 SDK文档打开跟踪并检查服务器跟踪日志.在G:\ work\htdocs\Robi_Francis_API\application\controllers\mirsValidation.php:117堆栈跟踪:#0 G:\ work\htdocs\Robi_Francis_API\application\controllers\mirsValidation.php(117):SoapClient - > __ call(' processPayment',Array)#1 G:\ work\htdocs\Robi_Francis_API\application\controllers\mirsValidation.php(117):SoapClient->

soap soap-client codeigniter-2

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

使用codeigniter进行路由 - 未传递ID

我最近选择了Codeigniter作为一个有趣的小方案项目,现在我正在努力使我的路线如下;

http://localhost/c/show/ID 
Run Code Online (Sandbox Code Playgroud)

应该转化为

http://localhost/c/ID
Run Code Online (Sandbox Code Playgroud)

我在配置中的路由中这样做;

$route['c/:any'] = "c/show/$1";
Run Code Online (Sandbox Code Playgroud)

但是,ID只是作为明文传递,这意味着传递给我的show()函数的ID是$ 1,而不是设置的ID.

我错了吗?我只是在他们的文档中查看,甚至尝试复制和替换,以确保它不是我键入错误的东西.

现在我担心我可能会误解某些东西,但我无法理解那可能是什么.

非常感谢任何和所有的帮助!

php codeigniter-2

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

Fileigniter上传文件并创建上传文件夹

我的Album_Model内部具有此功能:

public function upload($album_id, $album){
        $album= strtolower($album);

        $upload_config = array(
            'upload_path'   =>  './uploads/'.$album,
            'allowed_types' =>  'jpg|jpeg|gif|png',
            'max_size'      =>  '2000',
            'max_width'     =>  '680',
            'max_height'    =>  '435', 
        );

        $this->load->library('upload', $upload_config);

        // create an album if not already exist in uploads dir
// wouldn't make more sence if this part is done if there are no errors and right before the upload ??
        if (!is_dir('uploads')) {
            mkdir('./uploads', 0777, true);
        }
        if (!is_dir('uploads/'.$album)) {
            mkdir('./uploads/'.$album, 0777, true);
        }

        if (!$this->upload->do_upload('imgfile')) { 
            // upload failed …
Run Code Online (Sandbox Code Playgroud)

php codeigniter file-upload image-uploading codeigniter-2

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

比较日期-结束日期应大于开始日期

我想不出实现结束日期总是大于开始日期的逻辑。这是我的视图代码,其中有两个字段“事件结束”和“事件开始”。尝试执行,如验证中所示,使用jQuery结束日期大于开始日期,但失败。如何实现呢?

<div class="clearfix"></div>
<div class="control-group form-group">

  <label class="control-label col-md-4" style="text-align:left">Event Start</label>
  <div class="controls" style="margin-left:0px">

    <div class="col-md-3 date" data-date="12-02-2012" data-date-format="dd-mm-yyyy" data-date-viewmode="years">
      <input class="m-wrap col-md-11 m-ctrl-medium datepicker form-control" required="required" name="starttimedate" id="ed_starttimedate" type="text" value="<?php echo $_POST['starttime']?date('d-m-Y',$_POST['starttime']):date('d-m-Y'); ?> " />
      <!-- <span class="add-on"><i class="fa fa-calendar" style="margin-top:5px"></i></span> -->
    </div>
    <div class="col-md-1">&nbsp;</div>
    <div class="col-md-3  bootstrap-timepicker-component">
      <input class="m-wrap col-md-11 m-ctrl-medium timepicker-default form-control" required="required" value="<?php echo date('h:i A',$_POST['starttime']);?>" name="starttimetime" id="ed_starttimetime" type="text" />
      <!-- <span class="add-on"><i class="fa fa-clock-o" style="margin-top:5px"></i></span>-->
    </div>

    <div class="clearfix"></div>

  </div>

</div>
<div …
Run Code Online (Sandbox Code Playgroud)

javascript php codeigniter codeigniter-2 codeigniter-3

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