我对php很陌生,所以请多多包涵。我的数据库中有两个表,users
和onlineform
表。 onlineform
表具有userid
字段作为id
表中users
字段的外键。我正在尝试根据当前用户登录信息显示onlineform
表中的数据。问题是,它显示所有用户的数据,而不是登录用户的数据。我在form_model
中设置了查询,但我不知道查询是否正确
这是模型
form_model.php :
function getEmployees()
{
$this->db->select("users.id, onlineform.date, onlineform.day, onlineform.in1,
onlineform.out1, onlineform.in2, onlineform.out2");
$this->db->from('users');
$this->db->join('onlineform','users.id = onlineform.userid', 'left');
$this->db->order_by('date asc');
$query = $this->db->get();
return $query->result();
}
这是控制器
form.php
public function table()
{
if($this->session->userdata('username') != '')
{
$this->load->model('form_model');
$query = $this->form_model->getEmployees();
$data['EMPLOYEES'] = null;
if($query) {
$data['EMPLOYEES'] = $query;
}
}
else
{
redirect(base_url() . 'index.php/form/login');
}
$this->load->view('table.php', $data);
}
这是我的观点
table.php
<?php
foreach($EMPLOYEES as $employee)
{?>
<tr>
<td align="center"
<?php if($employee->day === "SAT" || $employee->day === "SUN"): ?> style="background-color:#A9A9A9; color: white;" <?php endif; ?>>
<strong><?=$employee->day;?></strong>
</td>
<td align="center"
<?php if($employee->day === "SAT" || $employee->day === "SUN"): ?> style="background-color:#A9A9A9; color: white;" <?php endif; ?>>
<strong><?=$employee->date;?></strong>
</td>
<td><?=$employee->out1;?></td>
<td><?=$employee->in1;?></td>
<td><?=$employee->out2;?></td>
<td><?=$employee->in2;?></td>
</tr>
<?php }?>
答案 0 :(得分:0)
您可以通过getEmployees($ userid)将当前登录的userId传递到模型中
$query = $this->form_model->getEmployees($userid);
然后在查询中使用它来获取与登录用户和数据库中的用户匹配的当前userId;
function getEmployees($userid)
{
$this->db->select("users.id, onlineform.date, onlineform.day, onlineform.in1,
onlineform.out1, onlineform.in2, onlineform.out2");
$this->db->from('users');
$this->db->where('onlineform','users.id',$userid); //add this line
$this->db->join('onlineform','users.id = onlineform.userid', 'left');
$this->db->order_by('date asc');
$query = $this->db->get();
return $query->result();
}
然后将其正常传递给您的视图。
希望这会有所帮助。
答案 1 :(得分:0)
您可以将当前登录的用户ID保存在会话中,然后在从数据库中检索数据时可以使用它。 将您的form_model.php代码更改为此
Uri uri = Uri.parse("https://chat.whatsapp.com/uniqueId");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(Intent.createChooser(intent, ""));