у меня есть таблица "tbl_userpersonal",
что я хочу добиться, это проверить, какие столбцы заполнены, а какие нет, поэтому я могу рассчитать или отобразить процент заполнения профиля.
\
До сих пор я пробовал много разных техник и кодов, и мой код считает все столбцы, но я хочу, чтобы он считал пустые столбцы значений как 0.
пожалуйста, помогите мне с решениями.
Пока, если в каком-либо столбце есть хотя бы одна запись для пользователя, это дает мне 100%, в противном случае 0% нет промежутка между
В настоящее время, если в столбце «папа_имя» & «мама_имя» & «DOB» есть значение для пользователя с user_authtoken = «app_7837hfjd57hdj», ожидаемый результат должен быть
3
50% т.е. (3/6) * 100
то, что сейчас происходит, это
если в каждом из этих столбцов есть значение для пользователя с user_authtoken = "app_7837hfjd57hdj", вывод будет отображаться как
6
100% т.е. (6/6) * 100
или если для пользователя нет записи с user_authtoken = "app_7837hfjd57hdj", вывод выводит
0
0%
![enter image description here](https://i.stack.imgur.com/DJHcS.png)
вот код php
$personal = mysqli_query($con,"
SELECT father_name,
mother_name,
DOB,
adhar_no,
address,
religion,
CASE WHEN father_name IS NOT NULL THEN 1 ELSE 0 END +
CASE WHEN mother_name IS NOT NULL THEN 1 ELSE 0 END +
CASE WHEN DOB IS NOT NULL THEN 1 ELSE 0 END +
CASE WHEN adhar_no IS NOT NULL THEN 1 ELSE 0 END +
CASE WHEN address IS NOT NULL THEN 1 ELSE 0 END +
CASE WHEN religion IS NOT NULL THEN 1 ELSE 0 END AS personal
FROM user WHERE `user_authtoken` = '$user_ath'
") or die(mysqli_error($con));
$data=mysqli_fetch_assoc($personal);
$pro_count = $data['personal'];
echo $pro_count ;
echo '<br>';
$percentage = ($pro_count /6)*100;
echo $percentage;