[PHP] Controllo campo cap con trattino oltre ai numeri

  • Creatore Discussione Creatore Discussione MoPa
  • Data di inizio Data di inizio

MoPa

Nuovo Utente
28 Mar 2016
16
0
1
Buondì,
con questo codice controllo se nel campo cap sono inseriti solo numeri, però all'estero utilizzano suddividere il cap con un trattino, esempio 5533-865.
Come posso implementare il controllo in modo che non dia errore se inseriscono anche un trattino?
PHP:
if ( !is_numeric($cap) )
{
echo "<center><h1>E R R O R E !</h1><br><h3>Il campo CAP deve deve contenere solo numeri ed il trattino per CAP esteri";
exit;
}

Grazie per l'aiuto
 
Ultima modifica di un moderatore:
Ho provato con questa funzione, e sembra funzionare, ma francamente non ho la certezza che la funzione sia scritta in maniera corretta, spero che qualcuno mi conferma oppure mi indica cosa mettere, grazie
PHP:
if (!preg_match("/^[0-9-]+$/", $cap))
{
echo "<center><h1>E R R O R E !</h1><br><h3>Il campo CAP deve contenere solo numeri ed il trattino per CAP esteri";
exit;
}
 
Ultima modifica di un moderatore:
@MoPa
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 
Ciao MoPa,
non ho molta dimestichezza con i cap stranieri; la struttura è sempe 4 numeri un trattino e due numeri finali ?
Se si, potresti provare questo script. Io ho provato ad inserire diversi cap e pare funzionare

PHP:
<?php
$cap = '0060-0';
$capit = "/^[0-9]{5}$/";
$capest = "/^[0-9]{4}-[0-9]{2}$/";
if (!preg_match($capit, $cap) and !preg_match($capest, $cap)) {
    echo 'E R R O R E';
} else {
    echo 'OK';
}
?>


Zorro
 

Discussioni simili