Потому что у вас все проверки условий равны
true
1. Вам надо сделать условие вида
if( a === b){
x*=2;
}elseif(a === c){
x*=3;
}elseif(a === d){
x*=4;
}else{
x*=5;
}
Сейчас у вас независимых друг от друга условий если ...
А надо чтобы было
если - если то - то
.
2. Что вы хотите проверить условием
!$row['cat']==web
и прочих?