我有一个寄存器视图文件,其中有一个非常大的形式.因此我打算使用表单向导插件和jquery表单验证插件.我只希望在特定页面上加载这些脚本.我该怎么做呢 ?这是我的控制器方法.
public function index(){
$data['title'] = "Register";
$this->load->view("site_header", $data);
$this->load->view("site_nav");
$this->load->view("content_register");
$this->load->view("site_footer");
}
Run Code Online (Sandbox Code Playgroud)
我在这里看到了关于stackoverflow的类似帖子,但我不明白该怎么做.请帮忙.
我正在尝试使用COdeigniter设置一个cron作业,但我无法弄清楚如何让它工作.我的控制器文件夹中有一个名为email_check.php的文件,我已将.cron文件添加到服务器cron文件夹中,其中包含以下内容:
email_check.cron
*/1 * * * * php /var/www/html/application/controllers/email_check
Run Code Online (Sandbox Code Playgroud)
email_check.php
class Email_check extends CI_Controller {
function __construct()
{
parent::__construct();
$this->index();
}
function index()
{
$this->load->model('admin/info_model');
$this->info_model->addTestData();
}
}
Run Code Online (Sandbox Code Playgroud)
addTestData将新行添加到数据库表中.我希望每分钟运行一次,但它根本不工作,我不知道为什么.
也许它可能是错误的路径.我是否需要将php部分指向服务器中的php.exe.
如果有人可以帮助或指出我正确的方向,将不胜感激!
我已经编写了一种机制来使用CodeIgniter中的AJAX技术(纯javascript)上传文件.
说明:
1 - 我编写了一个script.js文件,负责处理上传的AJAX/Javascript过程.
2 - 我在CodeIgniter中编写了一个控制器,它接收来自AJAX的请求以上传文件.
3 - 我写了一个简单的HTML页面
问题:当我点击上传按钮时,根本没有任何反应!没有显示错误.我认为javascript和php之间的数据传输存在问题.因为我在常规的php页面中使用了几乎相似的代码并且已经成功.
这是文件:
这是JAVASCRIPT
// JavaScript Document
var doUpload = function(event){
// globally used variables in this function
var progressBar = document.getElementById('progressBar');
event.preventDefault(); // prevents the default action of an element
event.stopPropagation();
// get the file-input id
var fileId = document.getElementById('file');
// this variable makes an object which accept key/value pairs which could be sent via ajax.send
var formObj = new FormData();
// append currently selected file to the …Run Code Online (Sandbox Code Playgroud) 1. codeigniter的上传库的encrypt_name选项是否唯一?
我知道这个overwrite选项很重要.如果overwrite是TRUE,它将覆盖,如果是FALSE,它将通过在名称末尾添加一个数字来重命名该文件.
问题是:它会重新生成加密的名称,直到找到唯一的名称,即使overwrite是TRUE吗?我问这个是因为很明显,当我们想要加密名称时,我们当然不想覆盖.
通过添加一些数字来重命名的问题是它会破坏文件名的大小.许多文件将有32个字符文件名,有些可能有33个字符文件名会破坏协调.
2.这有可能产生一个永远重复的结果吗?
我在MySQL上有一个存储过程,例如:
CREATE PROCEDURE get_multiple_results()
BEGIN
SELECT 'A' AS A;
SELECT 'B' AS B;
SELECT 'C' AS C;
END
Run Code Online (Sandbox Code Playgroud)
那么,我如何使用CodeIgniter的查询方法获取数据?
$this->db->query('CALL get_multiple_results()')->result_array();
Run Code Online (Sandbox Code Playgroud)
谢谢!
我对CI比较陌生,我想知道是否有人知道如何设置CI的默认页面.我只是将我的文件从本地服务器传输到远程服务器,并且遇到了一些问题.首先,我认为重要的是要注意我编辑了.htaccess文件,以便从URL中删除index.php.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
Run Code Online (Sandbox Code Playgroud)
其次,在我的config.php文件中,我有:
$config['base_url'] = '';
$config['index_page'] = 'sportstream';
Run Code Online (Sandbox Code Playgroud)
sportstream是在application/controllers/文件夹中找到的控制器的名称.根据我没有使用CI(或任何其他框架)的经验,远程服务器上文件夹index.php内的public_html文件是访问站点时默认加载的文件.但是,使用CI,每当我尝试访问我的域名时,都会返回404错误.我曾尝试设置base_url到http://www.mysite.com没有任何的运气.
有谁知道这里如何在访问让这个http://www.mysite.com该http://www.mysite.com/sportstream将被载入?
我试图通过url发送一个javascript数组.但它失败了
function viewReport(mode,someid){
if(mode==0){
var para= new Array();
para['para1'] = 'para1'||0;
para['para2']= 'para2' || 0;
console.log(para);
window.open('somePDFView/'+para,'_blank');
}else{
var para=[];
var paraelements={
para1:'anotherpara1'||0,
para2:'anotherpara2'||0
};
para[0]=paraelements;
window.open('somePDFView/'+para,'_blank');
}
}
Run Code Online (Sandbox Code Playgroud)
在if part(mode=0),para数组不再发送,而在else part(mode=1)上para是这样发送的:
somePDFView/[object Object]
Run Code Online (Sandbox Code Playgroud)
这显示错误:
所提交的网址带有不被接受的字符
我们如何通过url发送数组.我不能使用Ajax(因为它是一个弹出窗口)或会话或存储在临时表中.我们如何才能在控制器中检索这个值.
编辑:
我想念一个重要的事情,我正在使用codeigniter.然后我认为它不允许使用特殊字符,如 - &,=,[,]等.如果有任何其他方法可用于将数据作为数组发送?
我正在尝试在codeigniter框架中设计登录/注销页面.我的问题是,当我退出网页时,我被重定向到登录页面.当我回去时,我得到一个页面,上面写着:
文件已过期
Run Code Online (Sandbox Code Playgroud)This document is no longer available.
但是,当我刷新此页面时,我再次登录系统(oO)
以下代码包含我的构造函数和注销功能.请帮我设计一个完美的登录注销页面
function __construct()
{
parent::__construct();
$this->load->model('user_model');
$this->output->set_header('Last-Modified: ' . gmdate("D, d M Y H:i:s") . ' GMT');
$this->output->set_header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->output->set_header('Pragma: no-cache');
$this->output->set_header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
}
function logout()
{
$newdata = array(
'user_name' =>'',
'user_email' => '',
'logged_in' => FALSE,
);
$this->session->unset_userdata($newdata);
$this->session->sess_destroy();
redirect('default_controller','refresh');
}
Run Code Online (Sandbox Code Playgroud)
我尝试找到适当的注销方法,但我无法做到.
我正在使用jpgraph条形图.这一切都很好,但有一件事我无法弄明白.我需要在该栏(列)的顶部显示每个栏的值,但似乎我错过了一些我无法做到的事情.
我尝试过使用以下内容:
$bplot->value->Show();
Run Code Online (Sandbox Code Playgroud)
但它不起作用!任何帮助是极大的赞赏!
如何在不删除键的情况下删除数组的空值,也无需重置键.
Eg:
[0]= "test1"
[1]= ""
[2]= "test2"
Run Code Online (Sandbox Code Playgroud)
执行array_filter会产生以下输出:
[0]= "test1"
[2]= "test2"
Run Code Online (Sandbox Code Playgroud)
这里的密钥也被删除了.有没有办法只删除值而不删除键来获得如下输出:
[0]= "test1"
[1]= "test2"
Run Code Online (Sandbox Code Playgroud)
是否有任何PHP功能呢?