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

Discussione: Validare un form

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    65

    Validare un form

    Ciao a tutti,

    mi sapreste dire qual è il metodo più efficace e quello più utilizzato per validare un form?

    Io attualmente sto studiando da una guida vecchia e ho da poco scoperto che ereg è ormai caduto in disuso e cercando su php.net ho scoperto che ora si utilizza preg_match ().

    Grazie in anticipo.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Ti sei risposto da solo, tra i due, sicuramente preg_match.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    19
    ho un problema simile..quindi evito di aprire un nuovo topic e posto qua...

    sto usando Zend, e ho creato una classe per la creazione del form di registrazione utenti, compresi di validator.

    Il problema è che sull'username utilizzo la classe Zend_Form_Validator_Regex .. e la documentazione è veramente scarsa.

    Come pattern ho utilizzato /[0-9A-Za-z\[\]\/\x20\x7b\x7d\x2e*]{3,15}/ .

    Il problema è che se inserisco ad esempio come username smn`fdr4d , il validator non funge, dato che preg_match vede che la stringa è valida (in realtà solo smn è valida, dal ` in poi no).

    Di conseguenza, quando faccio form->isValid(dati) , sull'username il controllo va male..

    avete per caso avuto il mio stesso problema?

  4. #4
    devi fare dei controlli in una form giusto? se è cosi perchè non usi javascript?
    www.gicchesto.com
    Servizi informatici ed elettronici a 360° per aziende e/o privati.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    19
    Originariamente inviato da maurorhcp89
    devi fare dei controlli in una form giusto? se è cosi perchè non usi javascript?
    Perchè se uso JavaScript , chiunque con FireFox&FireBug può modificare il codice "a volo" ..

  6. #6
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    smn, probabilmente volevi usare /^[0-9A-Za-z\[\]\/\x20\x7b\x7d\x2e*]{3,15}$/



    ps: l'idea di validare il form con js al posto di php entra decisa nel top10 delle scemenze che ho letto su questo forum

  7. #7
    piano con le offese, secondo te commetterei scemenze?
    mi rispiego cosi magari ti tolgo i dubbi sul fatto che dica scemenze!

    puoi creare una function che ti valida un form in js tenendola su un altro file (cosi nn viene vista) e sul file che ti interessa richiamare quella funzione,

    o cmq io faccio una cosa ancora piu geniale, creo il form in php! e poi mi spieghi una cosa? come fa uno a modificarti il codice di una pagina html in linea?

    cioè, è una cosa impossibile.

    l unico rischio che si correi è che l utente puo salvarsi il codice sorgente sul suo pc e farne cio che vuole...ma la tua pagina non corre rischi di essere modificata o cosa! a meno che non ti trovino l' ftp. bo!
    www.gicchesto.com
    Servizi informatici ed elettronici a 360° per aziende e/o privati.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    19
    Originariamente inviato da maurorhcp89
    piano con le offese, secondo te commetterei scemenze?
    mi rispiego cosi magari ti tolgo i dubbi sul fatto che dica scemenze!

    puoi creare una function che ti valida un form in js tenendola su un altro file (cosi nn viene vista) e sul file che ti interessa richiamare quella funzione,

    o cmq io faccio una cosa ancora piu geniale, creo il form in php! e poi mi spieghi una cosa? come fa uno a modificarti il codice di una pagina html in linea?

    cioè, è una cosa impossibile.

    l unico rischio che si correi è che l utente puo salvarsi il codice sorgente sul suo pc e farne cio che vuole...ma la tua pagina non corre rischi di essere modificata o cosa! a meno che non ti trovino l' ftp. bo!
    Anche io il form lo faccio e lo valido in PHP, utilizzando il framework Zend, e le classi Zend_Form con i validator&decorator.

    Per quanto riguarda il codice da modificare, prova ad installare il browser Firefox e successivamente l'addon Firebug di cui parlavo prima. Tale addon ti permette di modificare al volo tutto il codice HTML, CSS, Javascript appartenente al sito, compresi i file "inclusi".
    E le modifiche sono in tempo reale, ovvero appena modifichi un tag, una tabella, uno style CSS, una funzione JS (o addirittura ne crei una nuova) , ne vedi gli effetti sulla pagina. Ed infine, per quanto riguarda JS , puoi anche lanciare le funzioni al volo.
    E' un ottimo strumento per uno sviluppatore..ma è un arma a doppio taglio. Allo sviluppatore può servire per fare debug rapidi, ad un utOnto per fare altro..(danni ad esempio)


    Ad ogni modo, la soluzione indicata da bubi1 sembra funzionare..inserendo "^" e "$" ad inizio e fine stringa indico che TUTTA la stringa deve rispettare il pattern ?

  9. #9
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    Originariamente inviato da maurorhcp89
    secondo te commetterei scemenze?
    se usi js come validazione unica, senza un ulteriore controllo server-side, allora si, senza dubbio.

    Originariamente inviato da smn
    inserendo "^" e "$" ad inizio e fine stringa indico che TUTTA la stringa deve rispettare il pattern ?
    Esattamente, quelli sono caratteri di inizio e fine stringa. Senza di quelli, il tuo pattern trovava 3 caratteri che corrispondevano alla ricerca, quindi restituiva true, senza che gliene importasse del fatto che ci sono altri caratteri illegali.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    19
    Originariamente inviato da bubi1
    se usi js come validazione unica, senza un ulteriore controllo server-side, allora si, senza dubbio.

    Esattamente, quelli sono caratteri di inizio e fine stringa. Senza di quelli, il tuo pattern trovava 3 caratteri che corrispondevano alla ricerca, quindi restituiva true, senza che gliene importasse del fatto che ci sono altri caratteri illegali.
    Ottimo..grazie 1000!

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.