我正在研究时间和工作时间,但我找不到任何明确,有效的方法来制作它:/
我有一个英文的codeigniter基础网站,我现在必须添加波兰语.根据访客选择,以2种语言制作我的网站的最佳方法是什么?
有没有办法为每种语言创建数组文件,并在视图文件中调用它们取决于来自lang选择的会话?我不想使用数据库.
感谢帮助!我已经没过截止日期了:/谢谢!!
我想在Codeigniter的活动记录中使用mySQL函数NOW()在数据库中插入当前时间.以下查询将不起作用:
$data = array(
'name' => $name ,
'email' => $email,
'time' => NOW()
);
$this->db->insert('mytable', $data);
Run Code Online (Sandbox Code Playgroud)
这是因为CodeIgniter的ActiveRecord类会自动转义输入.
以下工作正常,通过调用set()并传递peratmeter FALSE,以便它不会逃避NOW().
$data = array(
'name' => $name ,
'email' => $email,
);
$this->db->set('time', 'NOW()', FALSE);
$this->db->insert('mytable', $data);
Run Code Online (Sandbox Code Playgroud)
但是,我的问题是除此之外还有其他方法吗?例如,如果我可以通过添加数据数组中的所有内容以某种方式使用?例如,类似于:
$data = array(
'name' => $name ,
'email' => $email,
'time' => NOW(), FALSE
);
Run Code Online (Sandbox Code Playgroud) <?php
class Email extends Controller {
function Email()
{
parent::Controller();
$this->load->library('email');
}
function index()
{
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_port'] = '465';
$config['smtp_timeout'] = '7';
$config['smtp_user'] = 'mygmail@gmail.com';
$config['smtp_pass'] = '*******';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
$config['mailtype'] = 'text'; // or html
$config['validation'] = TRUE; // bool whether to validate email or not
$this->email->initialize($config);
$this->email->from('mygmail@gmail.com', 'myname');
$this->email->to('target@gmail.com');
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');
$this->email->send();
echo $this->email->print_debugger();
$this->load->view('email_view');
}
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
A PHP Error was encountered
Severity: Warning …Run Code Online (Sandbox Code Playgroud) 我正在使用CodeIgniter的Active Record类来查询MySQL数据库.我需要在表中选择一个字段未设置为NULL的行:
$this->db->where('archived !=', 'NULL');
$q = $this->db->get('projects');
Run Code Online (Sandbox Code Playgroud)
这只返回此查询:
SELECT * FROM projects WHERE archived != 'NULL';
Run Code Online (Sandbox Code Playgroud)
该archived字段是一个DATE字段.
有没有更好的方法来解决这个问题?我知道我可以自己编写查询,但我不想在整个代码中坚持使用Active Record.
目前,如果我正在对数据库执行查询,该查询应该只返回一行,请使用:
...query stuff...
$query = $this->db->get();
$ret = $query->result();
return $ret[0]->campaign_id;
Run Code Online (Sandbox Code Playgroud)
是否有CodeIgniter函数返回第一行?就像是$query->row();
或者更好的是,如果只有一行,只能直接使用查询对象.
例如 $query->campaign_id;
我真的不喜欢在每个控制器中写作:
$this->load->view('templates/header');
$this->load->view('body');
$this->load->view('templates/footer');
Run Code Online (Sandbox Code Playgroud)
是否可以这样做,页眉和页脚将自动包含在内,如果我们需要更改它,我们也可以这样做?你怎么处理那件事呢?或者你认为这不是问题?谢谢.
我对CodeIgniter和Active Record非常陌生,我知道如何在普通的SQL中做得很好,但我正在努力学习.
如何从我的某个表中选择一些数据,然后使用CodeIgniters Active Record类计算返回的行数?
谢谢,汤姆.
有没有办法让CI在遇到数据库错误时抛出异常,而不是显示如下消息:
发生数据库错误错误号:1054'where子句'中的未知列'foo'SELECT*FROM(
FooBar)WHEREfoo='1'
注意:我只希望在一个控制器中发生这种情况.在其他控制器中,我很高兴它显示数据库错误消息.
SELECT * FROM certs WHERE id NOT IN (SELECT id_cer FROM revokace);
Run Code Online (Sandbox Code Playgroud)
如何在CodeIgniter活动记录中编写上面的select语句?
我正在开始一个大型的codeigniter项目,并希望尝试为内容片段创建一些可重复使用的"迷你"视图,例如可以在不同页面/控制器上显示的数据循环.
从主控制器的视图中调用视图会更好吗?如果是这样,怎么样?或者我应该从控制器调用"迷你视图",从而将视图的代码传递给主视图?
codeigniter ×10
php ×5
activerecord ×2
mysql ×2
arrays ×1
database ×1
email ×1
multilingual ×1
null ×1
session ×1
smtp ×1
templates ×1