Php 通过选中复选框从存储中删除记录
我有一个ajax请求,它遍历存储并删除所有选定的记录 代码 当前代码从网格中检索1个id并将其删除。我需要做的是从网格中获取两个Id,因为我需要对数据库运行特定的sql。sql需要两个输入,下面是sqlPhp 通过选中复选框从存储中删除记录,php,sql,extjs,Php,Sql,Extjs,我有一个ajax请求,它遍历存储并删除所有选定的记录 代码 当前代码从网格中检索1个id并将其删除。我需要做的是从网格中获取两个Id,因为我需要对数据库运行特定的sql。sql需要两个输入,下面是sql public function delete( $vars ){ $sql = "DELETE FROM `LicenseFeatures` WHERE feature_id in({$vars->data->feature_id}) AND license_id in({$vars
public function delete( $vars ){
$sql = "DELETE FROM `LicenseFeatures` WHERE feature_id in({$vars->data->feature_id}) AND license_id in({$vars->data->license_id})";
if( $result = $vars->db->query( $sql ) ) {
echo json_encode( array( "success" => true,"sql"=>$sql ) );
} else {
echo json_encode( array( "success" => false ) );
}
}
请尝试将数据属性更改为此
data: Ext.encode(( function(){
var feature_id,
licence_id;
var sel = Ext.getCmp('featureGrid').getSelection();
var c = 0;
for( var i in sel ) {
if (c == 0) {
feature_id = sel[i].data.feature_id;
licence_id = sel[i].data.licence_id;
} else {
feature_id += "," + sel[i].data.feature_id;
licence_id += "," + sel[i].data.licence_id;
}
c++;
}
return {
feature_id: feature_id,
licence_id: licence_id
};
})())
如果我没有解释清楚,请说:我不太清楚你的意思。您是在谈论sql查询中使用的license\u id属性吗?是的,确切地说,我需要将该属性与feature\u id属性一起提交,否则javascript可能会让您感到困惑,因此您希望将feature\u id属性添加到ajax请求中。问题是什么?它在工作,但并没有删除特定的记录。它似乎在删除所有具有这些功能的记录,这很难解释,但我会解决它。这正是您要它做的。如果只想删除两条记录,则必须找到这些记录所特有的列。
data: Ext.encode(( function(){
var feature_id,
licence_id;
var sel = Ext.getCmp('featureGrid').getSelection();
var c = 0;
for( var i in sel ) {
if (c == 0) {
feature_id = sel[i].data.feature_id;
licence_id = sel[i].data.licence_id;
} else {
feature_id += "," + sel[i].data.feature_id;
licence_id += "," + sel[i].data.licence_id;
}
c++;
}
return {
feature_id: feature_id,
licence_id: licence_id
};
})())