Maison > Questions et réponses > le corps du texte
$('#btnmails').on('click', function(){ let ids = $.map($('.atitle'), (e) => $(e).attr('data-id')); ids = JSON.stringify(ids); console.log(ids); // ["26","25","24","23","22","21"] $.post('pro.php', {fn: 'btn_mails', args: [ids]}, function(data){ console.log(data); // 0 - but it is not true }); });
pro.php
function btn_mails($ids){ global $db; $sq = "select distinct mail from clients where id in ('" . $ids . "')"; $st = $db->prepare($sq); $st->execute(); $arr = $st->fetchAll(); echo count($arr); }
J'ai les six identifiants dans le tableau et chaque identifiant a un mail différent
Le résultat devrait donc être 6 au lieu de 0
S'il vous plaît, aidez
P粉2983052662024-04-01 15:21:43
Je pense que votre problème vient de votre fonction php
Peut-être $ids
是一个数组,因此您必须使用 implode
le convertir en chaîne
Comme ça
function btn_mails($ids){ global $db; $sq = "select distinct mail from clients where id in (" . implode(', ', $ids) . ")"; $st = $db->prepare($sq); $st->execute(); $arr = $st->fetchAll(); echo count($arr); }