سلام وقت بخیر دوستان . من یک جدول دارم همونطور که در عکس هم مشخص هست میخوام وقتی روی مثلا گزینه "مدیرکل" کلیک شد مقدارش که مربوط به شخص مورد نظر مثلا ردیف "1" ارسال بشه ولی در صورتی که تمام گزینه هایی که چک باکس انها تیک خورده همه ارسال میشوند.
دوستان مشکل بنظرتون کجاست؟

کدهای مربوط به html و ajax :
<?php foreach ($records as $record){ ?>
<tr>
<td><?= $i++ ?></td>
<td><?= $record['namefamily']?></td>
<td><?php getAccessName($record); ?></td>
<input type="hidden" name="accessUser" value="<?=$record['id']?>">
<td>
<lable style="display: inline-flex;"><input onclick="setAccess(this, <?=$record['id']?>)" name="superadmin" class="getAccessUser" value="superadmin" style="margin-left: 3px;" type="checkbox" <?php if(str_contains($record['access'] , '|superadmin|')){ echo 'checked'; } ?> >مدیرکل</lable>
<lable style="display: inline-flex;"><input onclick="setAccess(this, <?=$record['id']?>)" name="admin" class="getAccessUser" value="admin" style="margin-left: 3px;" type="checkbox" <?php if(str_contains($record['access'] , '|admin|')){ echo 'checked'; } ?> >مدیر</lable>
<lable style="display: inline-flex;"><input onclick="setAccess(this, <?=$record['id']?>)" name="owner" class="getAccessUser" value="owner" style="margin-left: 3px;" type="checkbox" <?php if(str_contains($record['access'] , '|owner|')){ echo 'checked'; } ?> >مالک</lable>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</div>
<div>
<button class="btn btn-primary" name="sendAccess" type="button" id="accessid" style="margin-right: 10px;">ثبت تغییرات</button>
</div>
<script>
function setAccess(sender , id){
sender = $(sender);
// alert (sender);
// console.log(sender);
var access = [];
$('.getAccessUser').each(function(){
if($(this).is(":checked")){
access.push($(this).val());
// access = sender.push($(this).val());
}
});
access = access.toString();
$.ajax('<?= baseUrl() ?>/admin/accessUpdate/' + id , {
type: 'post',
data:{access:access},
success: function(data){
// alert('ok1111');
console.log('okey');
}
});
}
</script>
کدهای مربوط به php:
public function accessUpdate($id){
if(!isset($_SESSION['mobile'])){
header('Location:' . baseUrl() . '/user/login');
exit();
}
if(!grantSuperAdmin()){
exit();
}
if(isset($_POST['access'])){
$setAccess = $_POST['access'];
echo $setAccess;
AdminModel::set_access($id,$setAccess);
}
// echo json_encode(array('status'=>true));
// header('Location: '.baseUrl().'/admin/fetchAccessUser');
}
کد مربوط به دیتابیس :
public static function set_access($idAccess,$setAccess){
$db = Db::getInstance();
$db->modify("UPDATE `x_users` SET `access` =:access WHERE `id` =:id " , array(
'id' => $idAccess,
'access' =>$setAccess,
));
}اولین نفری باشید که به این پرسش کمک میکند و مسیر حل مشکل را باز میکند.
اولین پاسخ را بنویسیدشاید پاسخ شما همینجا باشد