Код тут действительно неправильный, причем по очень многим параметрам. Много бессмысленных телодвижений, инъекции, плюс условие можно записать оптимальнее. Так что помимо исправления конкретной опечатки от
Rsa97, надо править этот код целиком
$sql = "SELECT * FROM blocks WHERE user_id = ?";
// выполняем запрос без инъекций. если версия РНР не новая, надо будет дописать эту функцию самому
$result = $conn->execute_query($sql, [$id]);
// получаем запрошенную строку, без всяких num_rows и foreach
$row = $result->fetch_assoc();
// получаем $block_level, даже если в $row пусто
$block_level = $row["type"] ?? 0;
// match - новое выражение в РНР начиная с 8.0 версии. в сто раз аккуратнее чем забор из elseif
$block_text_type = match ($block_level) {
1 => "Незначительная блокировка",
2 => "Частичная блокировка",
3 => "Полная блокировка",
default => "Нет блокировок",
};