В insert идет только 5 записей
Привет ребята подскажите при данном коде в insert идут только 5 записей а остальные игнорируются подскажите что я делаю не так?
if($db->NumRows() > 0){
while($ref = $db->FetchArray()){
$data_tarifs2[] = $ref;
}
}
foreach($data_tarifs2 as $key => $array){
$db->Query("SELECT * FROM `db_tarif_profit_50` WHERE `tarif` = '".$array['tarif']."' AND DATE(`date`) = CURDATE()");
if($db->NumRows() == 0){
$db->Query("SELECT * FROM `db_tarif_50` WHERE `id` = '".$array['tarif']."'");
$data_tarif2 = $db->FetchArray();
echo "<br>".$array['login']." ".$array['user_id']." ".$array['tarif']." ".$array['sum']." ".$array['sum']." ".$data_tarif2['profit'];
$percentprofit2 = ($array['sum'] * ($data_tarif2['profit']/100));
$nach2 = 1;
$db->Query("INSERT INTO `db_tarif_profit_50` (`user_id`,`tarif`,`amount`, `nach`) VALUES ('".$array['user_id']."','".$data_tarif2['id']."','".$percentprofit2."','".$nach2."')");
//$db->query("UPDATE `db_users_b` SET `money_b` = `money_b` + '".($percentprofit2/2)."', `money_p` = `money_p` + '".($percentprofit2/2)."' WHERE `id` = '".$array['user_id']."'");
//$db->query("UPDATE `db_tarif_buy_50` SET `nachisleno` = `nachisleno` + '".$nach2."' WHERE `id` = '".$data_tarif2['id']."' AND `user_id` = '".$array['user_id']."'");
}
}```
Ответы (1 шт):
Автор решения: navasiolau
→ Ссылка
2 возможных варианта:
- У вас всего 5 элементов удовлетворяющих условию и попадющие в цикл для записи.
- Такие элементы уже имеются в базе данных и по этой причине они не вставляются.
Вы можете проверить это выполнив дамп где-нибудь сверху, проверив, что значений в массиве в действительности больше, например с помощью print_r или var_dump.
Если же все это не помогает, то у вас явно валятся какие-то ошибки, но вы о них ничего не написали.