Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Ignited Datatables在加入表时获取id_Php_Mysql_Codeigniter_Datatable - Fatal编程技术网

Php Ignited Datatables在加入表时获取id

Php Ignited Datatables在加入表时获取id,php,mysql,codeigniter,datatable,Php,Mysql,Codeigniter,Datatable,我使用ignited datatables插件作为代码点火器, 问题在于使用此模型连接两个表时: public $table = 'user'; public function getDataTable(){ $this->load->library('datatables'); $this->datatables->select('user.username, role.name, user.id') ->join('role', ''.$thi

我使用ignited datatables插件作为代码点火器, 问题在于使用此模型连接两个表时:

public $table = 'user';

public function getDataTable(){
$this->load->library('datatables');
$this->datatables->select('user.username, role.name, user.id')
        ->join('role', ''.$this->table.'.role = role.id')            
        ->edit_column('id', '<button data-id="$1" id="edit" class="btn btn-primary"><i class="fa fa-edit"></i> Edit</button> <button data-id="$1" id="delete" class="btn btn-danger"><i class="fa fa-trash"></i> Delete</button>', 'id');
$this->datatables->from($this->table);

return $this->datatables->generate('json', '');
}
public$table='user';
公共函数getDataTable(){
$this->load->library('datatables');
$this->datatables->select('user.username,role.name,user.id')
->join('role','.$this->table'.role=role.id')
->编辑列('id','edit Delete','id');
$this->datatables->from($this->table);
返回$this->datatables->generate('json','');
}
它向我展示了这样的结果:

但是编辑按钮没有显示user.id的id 编辑按钮结果(firebug)

{“sEcho”:1,“iTotalRecords”:2,“iTotalDisplayRecords”:2,“aaData”:
[
{“用户名”:“管理员”,“姓名”:“管理员”,“id”:“编辑删除”},
{“username”:“admin2”,“name”:“staff”,“id”:“Edit Delete”}
],
“sColumns”:“user.username、role.name、user.id”}
如您所见,data id=“id”,但我需要data id=“1”或data id=“2”(user.id来自$1)


任何帮助都将不胜感激

面对这个问题几个小时后,我自己找到了答案! 这个问题是由FK和PK的模糊性引起的,所以我在select查询中添加了别名

我改变这一行:

$this->datatables->select('user.username, role.name, user.id')

然后改变

->edit_column('id', '<button data-id="$1" id="edit" class="btn btn-primary"><i class="fa fa-edit"></i> Edit</button> <button data-id="$1" id="delete" class="btn btn-danger"><i class="fa fa-trash"></i> Delete</button>', 'id');
->edit_列('id','edit Delete','id');

->edit_列('id','edit Delete','uid');
$this->datatables->select('user.username, role.name, user.id as uid')
->edit_column('id', '<button data-id="$1" id="edit" class="btn btn-primary"><i class="fa fa-edit"></i> Edit</button> <button data-id="$1" id="delete" class="btn btn-danger"><i class="fa fa-trash"></i> Delete</button>', 'id');
->edit_column('id', '<button data-id="$1" id="edit" class="btn btn-primary"><i class="fa fa-edit"></i> Edit</button> <button data-id="$1" id="delete" class="btn btn-danger"><i class="fa fa-trash"></i> Delete</button>', 'uid');