У меня есть форма PHP, которая публикует любое количество записей для следующего:
'asset_ID', 'percent_owner_<?=$members['member_ID']?>'
Страница PHP, получающая сообщение, разделяет процент_обладателя и member_ID с помощью следующего:
foreach ($_POST AS $input => $value) {
if (stristr($input, 'percent_owner_')) {
$memberID = str_replace('percent_owner_', '', $input);
$data[$memberID] = array(
'memberID' => $memberID,
'percentOwner' => $value
);
}
}
Следующая часть скрипта вводит любое количество записей в MySQL, используя следующее:
foreach ($data AS $share) {
$asset_ID = $_GET['asset_ID'];
$query = "INSERT INTO shares (asset_ID, member_ID, percent_owner)
VALUES ('$asset_ID', '{$share['memberID']}', '{$share['percentOwner']}')";
$add_shares = $db->exec($query);
}
Все это прекрасно работает.Сейчас у меня проблемы с тем, что до вставки MySQL выше я хотел бы проверить, что все проценты составляют до 100%.Например, если есть 3 члена с 25%, 25% и 25%, я хочу создать сообщение об ошибке, а не вставлять.Прямо сейчас вы должны вручную ввести проценты и суммировать их до 100 самостоятельно.База данных будет принимать меньше или больше 100%, что нарушает математику.
Я играл со следующей командой перед вставкой безрезультатно:
foreach ($data AS $share => $value) {
$total = array_sum($value);
}
include('./view/temp.php');
Я очень плохо знаком сPHP, поэтому, пожалуйста, терпите мое невежество.
Спасибо!