我正在使用PHP编写Web应用程序.我想为此使用MVC模式,并决定使用CodeIgniter.我的应用程序将有一些页面需要身份验证,而有些页面则不需要.我想以非常通用的方式设计它,这样就不会有代码重复.任何人都可以为此指出一些好的"设计/类结构"吗?
我正在修补CodeIgniter并且第一次遇到Active Records.起初我把它视为不熟悉如何编写SQL的人的东西.我现在意识到我的分析存在缺陷,Active Records非常突出,特别是在Rails中.
但Active Records的目的是什么?是从抽象的不同RDBMS个性中抽象出来的.如果是这样,我认为这不是SQL的意思.此外,什么是最佳做法,我应该使用这些吗?
提前致谢
为什么我的模型不会加载加密库?
class User_model extends Model {
function User_model() {
parent::Model();
$this->check_login();
}
function check_login() {
$this->load->library('encrypt');
$email = $this->encrypt->decode($email);
....
}
}
Run Code Online (Sandbox Code Playgroud)
这给了我一个PHP错误:在第X行的非对象上调用成员函数decode() - 其中X是$ this-> encrypt-> decode($ email); 线?
编辑显示问题是从构造函数调用了check_login
嗨,我正在尝试将我当前的URL存储在会话变量中.
我的应用使用了www.domain.com/add?url=http://www.google.com等查询字符串
但是current_url()返回'ww.domain.com/add'.没有查询字符串的网址.
我检查了帮助文件,current_url似乎只是将uri段附加到配置中设置的site_url.
function current_url()
{
$CI =& get_instance();
return $CI->config->site_url($CI->uri->uri_string());
}
Run Code Online (Sandbox Code Playgroud)
任何人都知道我如何抓住查询字符串来追加它们,甚至只是抓住整个网址.
我该怎么用ini_set('max_execution_time', 0);?
问题1:我是将它放在.PHP文件的顶部还是需要很长时间才能执行某项操作的函数中?
问题2:此设置在设置后是否会永久持续?或者它在函数停止运行后返回到原来的300秒或任何默认值?
CodeIgniter有一个非常简单的默认错误404消息:
404 Page Not Found
The page you requested was not found.
Run Code Online (Sandbox Code Playgroud)
我没有在完全空白页面上使用此错误消息,而是将此消息包装在我的页眉和页脚视图之间,以便错误消息与其他页面具有相似的外观.
为此,我创建了一个错误视图?例如:
my404_view.php
<? $this->load->view('header'); ?>
404 Page Not Found
The page you requested was not found.
<? $this->load->view('footer'); ?>
Run Code Online (Sandbox Code Playgroud)
现在,我如何使用它my404_view.php作为默认视图来显示404消息,而不是使用CodeIgniter默认错误消息.
嗨团队我是CI和离子auth的新手,我想找到在登录用户上获取用户名并使其成为字符串的最佳方法.我试过这个,我得到一个错误.
类CI_Email的对象无法转换为字符串
这是我的控制器
class Dashboard extends CI_Controller {
function index() {
$user = $this->ion_auth->user();
$email = $user->email;
$data['email']= $email;
$data['mainContent'] = 'dashboard_view';
$this->load->view('template', $data);
}
Run Code Online (Sandbox Code Playgroud)
并查看
<div id='dashboarWap'>
<?php echo form_open('dashboard/dashInput'); ?>
<?php echo $email; ?>
Run Code Online (Sandbox Code Playgroud)
任何关于我为什么会收到此错误的想法都将是一个很大的帮助,谢谢.
由于技术原因,我不想使用.htaccess从CodeIgniter中的URL中删除index.php.我看过路线部分.我也尝试过这样的路线:
$route['(:any)'] = 'index.php/$1';
Run Code Online (Sandbox Code Playgroud)
但它没有用.
是否可以index.php使用CodeIgniter中的路由器删除?
我有下面的PHP函数,它将本地PDF文件转换为图像.简而言之,我希望将每个PDF页面转换为单独的图像.
该函数将PDF转换为图像 - 但仅限于最后一页.我希望PDF的每个页面都转换为图像并编号.不仅仅是PDF的最后一页.
目前,此函数将最后一页转换example.pdf为example-0.jpg.问题我肯定在for方法中.我错过了什么?
$file_name = 'example.pdf'; // using just for this example, I pull $file_name from another function
function _create_preview_images($file_name) {
// Strip document extension
$file_name = basename($file_name, '.pdf');
// Convert this document
// Each page to single image
$img = new imagick('uploads/'.$file_name.'.pdf');
// Set background color and flatten
// Prevents black background on objects with transparency
$img->setImageBackgroundColor('white');
$img = $img->flattenImages();
// Set image resolution
// Determine num …Run Code Online (Sandbox Code Playgroud) 我正在使用Codeigniter.我创建了一个HTML表单,将数据发布到Controller.
此表格工作正常但突然停止发布数据.
HTML:
<form name="frm_search" id="frm_search" method="post" action="http://ip/free/index.php/taskdetails/tabOne/1/ShibNo/asc/">
<input id="order1" name="order1" value="26" type="text" >
<input id="item1" name="item1" value="" type="text" >
</form>
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)echo "CONTENT_TYPE: " . $_SERVER['CONTENT_TYPE'] . ""; $data = file_get_contents('php://input'); echo "DATA: <pre>"; var_dump($data); var_dump($_POST); echo "</pre>"; exit;
结果:
CONTENT_TYPE:application/x-www-form-urlencoded
字符串'order1 = 26&item1 ='
array(size = 23)
'order1'=> string'26'(length = 2)
'item1'=> string''(length = 0)
但是当我在控制器中打印$ _POST时,我得到以下内容:
Array
(
[order1] =>
[item1] =>
)
Run Code Online (Sandbox Code Playgroud)
我的.htaccess代码如下:
Run Code Online (Sandbox Code Playgroud)RewriteEngine on RewriteCond $1 !^(index\\.php|resources|robots\\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule …
codeigniter ×10
php ×8
.htaccess ×2
activerecord ×1
apache ×1
database ×1
forms ×1
imagemagick ×1
imagick ×1
mysql ×1
pdf ×1
post ×1
query-string ×1
uri ×1