Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: campi form php

  1. #1

    campi form php


    ziao

    zono alle prese con un form in php post,

    come fazzio ad accettare solo numeri nel campo "telefono" e solo testo con la "@" nel campo email???

    mi fate zapere?
    zi zono articoli/threads al riguardo?
    grazie
    solo alla stregua di un sogno mi troverò, e non vorrò più svegliarmi...

  2. #2

    Re: campi form php

    espressioni regolari

    se cerchi nel forum dovresti trovarne già pronte


  3. #3

  4. #4


    vado documentarmi...
    solo alla stregua di un sogno mi troverò, e non vorrò più svegliarmi...

  5. #5
    ok, questi sono gli script che fanno al mio caso:

    per il campo email:

    if ($email == "" || (!ereg(".+\@.+\..+", $email)) || (!ereg("^[a-zA-Z0-9_@.-]+$", $email)))
    {
    echo "Attenzione! Non hai compilato il campo $email" ;
    }


    per il campo telefono:

    if ($tel == "" || (eregi("[a-z]", $tel)))
    {
    echo "Attenzione! Non hai compilato il campo $tel" ;
    }


    solo alla stregua di un sogno mi troverò, e non vorrò più svegliarmi...

  6. #6
    if ($email == "" || (!ereg(".+\@.+\..+", $email)) || (!ereg("^[a-zA-Z0-9_@.-]+$", $email)))

    mi sa che non è tanto utile questo controllo...
    $email=="" questo lo controllano già le due regexp.
    .+\@.+\..+ ,questo dice che nel campo email ci può essere qualunque carattere basta che ci sia anche (almeno)una chiocciola e un punto,anche qualcosa tipo @@...@@@....
    ^[a-zA-Z0-9_@.-]+$ questo indica che la stringa deve essere formata da almeno un carattere di qualunque genere,ad esempio accetta #%.
    prova ad esempio con "^[\w\._-]+@([\w_-]+\.)+[a-z]{2,}$",non è il massimo ma è almeno un inizio

    anche il controllo del telefono è un colabrodo
    [a-z] serve a controllare che nella stringa ci sia una lettera ,e non tiene conto di altri caratteri, ma questo !"£$%&/()#@ non mi pare un numero di telefono,eppure passa il controllo...
    prova con "^(\+)?[0-9]+[/ -]?[0-9]+$" ,che dovrebbe accettare numeri tipo:
    3289999999
    +393289999999
    328/9999999
    328 03203200
    +39345-234523452
    ovviamente il controllo è if(!eregi(eccetera..

  7. #7
    attento che se uno mette per numero 09oooiup3j gli esce il messaggio "attenzione!non hai compilato il campo 09oooiup3j" VVoVe:

  8. #8
    ok grazie, l'email va meglio così:

    if ($email == "" || (!ereg(".+\@.+\..+", $email)) || (!ereg("^[\w\._-]+@([\w_-]+\.)+[a-z]{2,}$", $email)))


    ma il tel no, e poi [a-z] mi funziona al contrario:
    if ($tel == "" || (eregi("[a-z]", $tel)))
    mi serve ad escludere i numeri...

    solo alla stregua di un sogno mi troverò, e non vorrò più svegliarmi...

  9. #9
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Prova pure questa funzione per il controllo dell'email: http://www.devpro.it/code/2.html :TheGoodCoders:

    Per il controllo sul campo $tel potresti provare una cosa simile
    codice:
    if( preg_match('/^[\d]+$/', trim($tel)) ) { 
      // valido, solo caratteri numerici
    } else { 
      // non valido
    }

  10. #10
    [supersaibal]Originariamente inviato da cybergiaggia
    ok grazie, l'email va meglio così:

    if ($email == "" || (!ereg(".+\@.+\..+", $email)) || (!ereg("^[\w\._-]+@([\w_-]+\.)+[a-z]{2,}$", $email)))
    [/supersaibal]
    basta soltanto il controllo che ti ho messo io(meglio ancora quello suggerito da neida,che poi è di un altro utente del forum,anrd3a), i primi due controlli sono completamente superflui.
    [supersaibal]
    ma il tel no, e poi [a-z] mi funziona al contrario:
    if ($tel == "" || (eregi("[a-z]", $tel)))
    mi serve ad escludere i numeri...

    [/supersaibal]
    bastava leggere meglio il mio post precedente,nell'ultima riga....

    if (! eregi("[a-z]", $tel))

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.