Se uso questo codice:
Codice PHP:
// verifico che tutti i campi siano stati compilati
if (! $name || ! $email || ! $phone || ! $message) {
$test = false;
echo "<p><strong>Tutti i campi del modulo sono obbligatori!</strong></p>";
} // verifico che il messaggio non sia troppo lungo
elseif (strlen ( $name ) >= 100 || strlen ( $email ) >= 100 || strlen ( $phone ) >= 100 || strlen ( $message ) >= 5000) {
$test = false;
echo "<p><strong>Il messaggio e' troppo lungo.</strong></p>";
} // verifico che il nome non contenga caratteri nocivi
elseif (! preg_match ( '/^[A-Za-z \'-]+$/i', $name )) {
$test = false;
echo "<p><strong>Il nome contiene caratteri non ammessi.</strong></p>";
} // verifico che l'indirizzo email sia valido
elseif (! filter_var ( $email, FILTER_VALIDATE_EMAIL )) {
$test = false;
echo "<p><strong>Indirizzo email non corretto.</strong></p>";
} // verifico che il numero di telefono sia un numero senza spazi
elseif (! is_numeric ( $phone )) {
$test = false;
echo "<p><strong>Numero di telefono non corretto.</strong></p>";
}
nessun problema. Se sostituisco l'ultimo elseif con else come qui di seguito:
Codice PHP:
// verifico che tutti i campi siano stati compilati
if (! $name || ! $email || ! $phone || ! $message) {
$test = false;
echo "<p><strong>Tutti i campi del modulo sono obbligatori!</strong></p>";
} // verifico che il messaggio non sia troppo lungo
elseif (strlen ( $name ) >= 100 || strlen ( $email ) >= 100 || strlen ( $phone ) >= 100 || strlen ( $message ) >= 5000) {
$test = false;
echo "<p><strong>Il messaggio e' troppo lungo.</strong></p>";
} // verifico che il nome non contenga caratteri nocivi
elseif (! preg_match ( '/^[A-Za-z \'-]+$/i', $name )) {
$test = false;
echo "<p><strong>Il nome contiene caratteri non ammessi.</strong></p>";
} // verifico che l'indirizzo email sia valido
elseif (! filter_var ( $email, FILTER_VALIDATE_EMAIL )) {
$test = false;
echo "<p><strong>Indirizzo email non corretto.</strong></p>";
} // verifico che il numero di telefono sia un numero senza spazi
else (! is_numeric ( $phone )) {
$test = false;
echo "<p><strong>Numero di telefono non corretto.</strong></p>";
}
ottengo questo errore:
codice:
Parse error: syntax error, unexpected '{' in ... on line 151
Ma come è possibile? Perché?!? Non può essere!!!