Помещение значений в массив и использование array_sum

Хорошо, я немного застрял, я знаю, это простая вещь, которую я здесь скучаю, так что надеюсь, что свежие глаза помогут

У меня есть значения в столбце, хранящемся как 2: 7: 99 и т. Д., Каждое значение разделено:

Теперь я могу отделить все значения и запросить другую таблицу, чтобы получить цену, соответствующую этому значению.

Проблема, которую я имею, делает СУММУ всех ценовых значений
Смотрите код ниже
Я думаю, что самым простым способом было бы добавить все значения цен в массив и затем выполнить array_sum (), но по какой-то причине я просто не могу заставить его работать

** Пожалуйста, НЕ упоминайте SQL-инъекцию. Он находится на ЛОКАЛЬНОЙ машине, НЕТ внешнего доступа, и только я буду использовать это

    <?php
include('config.php');
// Function for calculation Rough Invoice Total
function basicTotal() {
$con = mysqli_connect("localhost","USER","PASS","TABLE");
$wtbdq = mysqli_query($con,"SELECT * FROM `jobs` WHERE wsjid = '18'");
$wtbdr = mysqli_fetch_assoc($wtbdq);
do {
$wtbd = explode(":",$wtbdr['worktobedone']);
foreach($wtbd as $item)
{
$priceq = mysqli_query($con,"SELECT * FROM `workshop-items` WHERE wsiid = '$item'");
$pricer = mysqli_fetch_assoc($priceq);

$price = array($pricer['incvat']);

echo $item.' - '. $pricer['incvat'].'<br>';

}

} while($wtbdr = mysqli_fetch_assoc($wtbdq));

$total = array_sum($price);
echo $total;
}
basicTotal();
?>

заранее спасибо

3

Решение

Вы все время перезаписываете свою окончательную цену:

$price = array($pricer['incvat']);

Замените это на:

$price[] = $pricer['incvat'];
2

Другие решения

just replace  $price = $pricer['incvat'];

with this in your code

$price[] = $pricer['incvat'];
4

Проблема с вашим текущим подходом заключается в том, что вы перезаписываете $price переменная. Вам нужно нажать значение в $price массив как $price[] = $pricer['incvat'], Вы должны сделать это

    <?php
include('config.php');
// Function for calculation Rough Invoice Total
function basicTotal() {
$con = mysqli_connect("localhost","USER","PASS","TABLE");
$wtbdq = mysqli_query($con,"SELECT * FROM `jobs` WHERE wsjid = '18'");
$wtbdr = mysqli_fetch_assoc($wtbdq);
do {
$wtbd = explode(":",$wtbdr['worktobedone']);
foreach($wtbd as $item)
{
$priceq = mysqli_query($con,"SELECT * FROM `workshop-items` WHERE wsiid = '$item'");
$pricer = mysqli_fetch_assoc($priceq);

$price[] = $pricer['incvat'];

echo $item.' - '. $pricer['incvat'].'<br>';

}

} while($wtbdr = mysqli_fetch_assoc($wtbdq));

$total = array_sum($price);
echo $total;
}
basicTotal();
?>
2