我正在使用codeigniter来查询数据库,我需要在where子句中有条件地比较数组.
所以基本上我想做:where_in OR where_in取决于哪个数组中包含数据.所以我将有一个user_id数组或一个area_id数组.
我不确定如何结合where_in比较.这是我需要修改的查询:
public function get_checks_test($org_id,$users,$areas) {
// get todays date
$todays_date = date("Y-m-d");
// build where array
$check_array = array('c.org_id =' => $org_id, 'c.status !=' => '0', 'c.due <=' => $todays_date);
// build query
$this->db->select('c.*,a.check_area_id,b.check_user_id,d.area_name,u.first_name,u.last_name');
$this->db->order_by('c.due', 'asc');
$this->db->where($check_array);
$this->db->where_in('user_id', $users);
$this->db->or_where_in('area_id', $areas);
$this->db->join('check_assigned_areas a','a.check_id = c.check_id','left');
$this->db->join('check_assigned_users b','b.check_id = c.check_id','left');
$this->db->join('areas d','d.area_id = a.check_area_id','left');
$this->db->join('users u','u.id = b.check_user_id','left');
$check_object = $this->db->get('checks c');
return $check_object->result();
}
Run Code Online (Sandbox Code Playgroud)
我不认为我能找到一个or_where_in函数.
我可以这样做,还是需要重新考虑?
谢谢
我有以下使用codeigniter活动记录功能的查询表,
select * from user where user_id!=10
Run Code Online (Sandbox Code Playgroud)
我已经尝试了以下代码
$condition=array(
'userr_id!='=>2,
);
$this->db-get('userd',$condition);
Run Code Online (Sandbox Code Playgroud)
其返回数据库错误。如何使用活动记录功能进行查询?
我打算在我的项目中创建一个基于参考和赚取概念的模块,我面临一个问题,当用户注册并且该用户引用某人时,我们将立即支付给被推荐的用户,但问题是用户可以创建假帐户,可以赚钱.所以如何停止在PHP,Codeiniter中注册这类用户.到目前为止我们所做的事情如下所述
1.
验证码2.电子邮件验证
3.通过IP地址验证
4.每个用户的唯一链接,并在注册新用户后使其过期通过此链接
5.通过Cookie
验证6.通过计算机名称验证
完成此操作后,用户可以创建一个假帐户,并可以从网站获取资金.那么我必须实现什么是休息点,并且可以获得假用户并在他们尝试注册时阻止他们.
我的老阵
array:7 [
0 => "22-Feb-2017"
1 => "22-Feb-2017"
2 => "22-Feb-2017"
3 => "27-May-2015"
4 => "10-May-2015"
5 => "10-May-2015"
6 => "08-May-2015"
]
Run Code Online (Sandbox Code Playgroud)
我想要新阵列
array:7 [
22-Feb-2017 => "3"
27-May-2015 => "1"
10-May-2015 => "2"
08-May-2015 => "1"
]
Run Code Online (Sandbox Code Playgroud) 我正在开发一个Codeigniter项目.我有一个jQuery设置background-image为正文的文件:
$('body').css('background-image','url(<?php echo base_url("assets/images/bg2.png");?>)') ;
Run Code Online (Sandbox Code Playgroud)
我试过这个来设置图像路径,但不起作用.
我该怎么办?
我正在使用Codeigniter登录系统.我没有错误,但它不起作用.
这是我的表格:
<div class="row">
<div class="col-md-4 offset-md-4 bg-primary">
<?php echo validation_errors() ?>
<?php echo form_open('admin') ?>
<h3 class="text-center"><?php echo $title ?></h3><hr>
<div class="form-group">
<label>UserName:</label>
<input type="text" name="username" class="form-control" placeholder="username">
</div>
<div class="form-group">
<label>Password:</label>
<input type="password" name="password" class="form-control" placeholder=" password">
</div>
<div class="form-group">
<input type="submit" name="submit" class="form-control btn btn-success" value="Log in">
</div>
<?php echo form_close() ?>
</div>
Run Code Online (Sandbox Code Playgroud)
控制器:
class admin extends CI_Controller{
//login
public function index(){
$data['title'] = 'Login';
$this->form_validation->set_rules('username','Username','required');
$this->form_validation->set_rules('password','Password','required');
if($this->form_validation->run() === false ){
$this->load->view('admin/header',$data);
$this->load->view('admin/login_form',$data);
$this->load->view('admin/footer');
}
else{
$this->load->model('admin_model'); …Run Code Online (Sandbox Code Playgroud) 如何将ajax的结果附加到textarea?我正在使用codeigniter.我想将我在控制器中获得的值附加到textarea.
这是我的控制器中传递的查询结果,要附加在我的textarea中:
checkup_diagnosis: [2]
0: Object
diagnosis: "Java"
1: Object
diagnosis: "Scala"
Run Code Online (Sandbox Code Playgroud)
现在我希望将两个值插入到我的textarea中.这是我尝试过的,#modaldiagnosis我的textarea的ID在哪里:
function view_profile(check_up_date,check_up_id) {
$.ajax({
url: siteurl+"search_records/view_profbtn",
type: "POST",
data: {check_up_id:check_up_id, check_up_date:check_up_date},
dataType: "JSON",
success: function(data){
for(i=0;i<data.length;i++) {
$('#modaldiagnosis').append(data['checkup_diagnosis'][i]['diagnosis']);
}
}
});
}
Run Code Online (Sandbox Code Playgroud) 我是Codeigniter的新手。我想创建一个搜索栏,用户在其中写一些关键字,它将检查数据库中表的所有字段,然后显示相对结果。
这是我的View代码:
<?php
echo '<h2>Search Books</h2>';
echo form_open('site/search');?>
<p>
<label for="title"> Title:</label>
<input type="text" placeholder="Search" name="search" size="50%">
</p>
<input type="submit" value="Submit"/>
<?php echo form_close(); ?>
<!--Here will be Search Result-->
<?php if (isset($searches)): foreach($searches as $search):?>
<h4><?php echo "   ";
echo $search->book_name;
echo "   "; ?></h4>
<?php endforeach; ?>
<?php else: ?>
No Book Found
<?php endif;?>
Run Code Online (Sandbox Code Playgroud)
并且名称站点的控制器代码是
function search(){
$search_book = array (
$search= $this->input->post('search')
);
$this->users_model->user_search($search_book);
$this->dashboard();
Run Code Online (Sandbox Code Playgroud)
在控制器中查询结果
if ($query = $this->users_model->user_search())
{
$search['searches'] = $query; …Run Code Online (Sandbox Code Playgroud) 我正在使用php codeigniter开发一个Web应用程序.在views文件夹中,我创建了包含css和js等文件的header.php和用于页脚的footer.php.在默认控制器中,当我使用时$this->load->view('header'),它没关系.但是当我在其他页面中使用此命令时,无法加载css文件.在inspect元素中我有错误说明在css文件路径中,codeigniter添加index.php/ctrl_name到此地址.
这是我的css文件的路径:
http://localhost:9000/CRM/index.php/home/assets/css/materialize.min.css
Run Code Online (Sandbox Code Playgroud) 我正在生成一个会话,但是当我生成它时,我__ci_last_regenerate 在调用$this->session->set_userdata('sessionName',$sessionArray)函数后没有得到.当我在没有__ci_last_regenerate的情况下生成我的会话后重定向时,会话数据没有出现在下一页上.我正在使用CI 3.1.4
$user_basic = array(
'user_id' => $user_id,
'email' => $this->input->post('email'),
'is_user_login' => 'true',
'language' => 'eng'
);
$this->session->set_userdata('user_basic',$user_basic);
echo'<pre>';print_r($this->session->userdata());
Run Code Online (Sandbox Code Playgroud)
谢谢