Ciao a tutti,
dopo aver fatto creare un utente da una mia amica che non conosce nulla del sito ho avuto modo di accorgermi di un bellissimo bug, che ora sto cercando di risolvere...
dunque, io mi ritrovo un bellissimo if con i suoi elseif, all'interno del penultimo devo controllare che le statistiche siano compresi fra 17 e 9, se c'è un 9 ci deve essere un 18 e viceversa... qualcuno di voi ricorderà che abbiamo già parlato soprattutto di quest'ultima parte, ma non abbiamo mai parlato del 17 e del 9 per quanto riguarda invece tutte e sei le statistiche... dunque, io ho provato a fare così ma non funziona perché secondo me la variabile si perde e quindi non si può registrare tutto quello che c'è all'interno dell'array

Codice PHP:
$totalval = array($forza$destrezza$vigore$intelligenza$spirito$presenza);

            if(empty(
$_POST['creatore']) || empty($_POST['login']) || empty($_POST['ETAPG']) || empty($_POST['sesso']) || empty($_POST['AppPol']) || 
            empty(
$_POST['classe']) || empty($_POST['forza']) || empty($_POST['destrezza']) || empty($_POST['vigore']) || empty($_POST['intelligenza'])
            || empty(
$_POST['spirito']) || empty($_POST['presenza'])) {
                echo 
"per favore riempi tutti i campi, ricorda che si può avere un solo personaggio della stessa appartenenza politica!";
    }
            elseif(!
is_numeric($_POST['ETAPG']) || !($_POST['ETAPG']>=18)) {
            echo 
"\"Età\" deve essere un numero e deve essere uguale o maggiore a 18";
            }
            elseif(!
is_string($_POST['login'])  || !preg_match("/^[a-z0-9_]+$/i""$login")) {
            echo 
"il nome deve essere alfanumerico!";
            }
            elseif(
array_sum($totalval) != 76) {
            echo 
"la somma delle caratteristiche deve essere identica a 76!";
            }
            elseif(
array_sum($totalval) == 76) {
                for(
$y 0$y <= 5$y++) {
                 if(!(
$totalval[$y] >= && $totalval[$y] <= 18)) {
                     echo 
"valore non compreso fra 9 e 18";
                 }
             }
            }
            elseif(
in_array(18,$totalval) && !in_array(9,$totalval)) {
            echo 
"se all'interno delle statistiche viene inserito un 18 bisogna inserire obbligatoriamente un 9";
             for(
$x 1$x <= 4$x++) {  
                  if(!(
$totalval[$x] >= 10 AND $totalval[$x] <= 17)) {  
                      echo 
"valore non compreso tra 10 e 17";  
                 }  
            }  
    }  
           
        else{


        require_once(
"regPG.php");
        
$obj = new Register();
        
$obj->personaggi($_POST['creatore'], $_POST['login'], $_POST['ETAPG'], $_POST['sesso'],
        
$_POST['AppPol'], $_POST['classe'], $_POST['forza'], $_POST['destrezza'], $_POST['vigore'], $_POST['intelligenza'],
        
$_POST['spirito'], $_POST['presenza'], $pf);
        } 
Dunque, togliendo il seguente codice funziona tutto, ma come faccio a far funzionare tutto anche con questa postilla?

Codice PHP:
elseif(array_sum($totalval) == 76) {
                for(
$y 0$y <= 5$y++) {
                 if(!(
$totalval[$y] >= && $totalval[$y] <= 18)) {
                     echo 
"valore non compreso fra 9 e 18";
                 }
             }
            }