Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    controllo campo anno form

    salve a tutti. Scusate vi sembrerà banale e in effetti lo è ma a me questo controllo dà sempre errore e non capisco perchè..

    codice:
    $anno = JRequest::getString('anno','','post');         // CONTROLLO ANNO
    $pattern5 = '/^([0-9]{4})$/';
    if ( !preg_match($pattern5, $anno)  || $anno < 1930 || $anno > 1995 ){
      $messaggi[] = "Inserire l'anno in millesimi";
    }
    se inserisco un anno tipo 1960 non dovrebbe darmi l'errore...dove sbaglio?

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    $anno lo recuperi con getString...prima di confrontarlo dovresti convertirlo in int

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3
    sì in effetti c'ho pensato dopo...anche se togliendo i 2 confronti alla fine mi dava errore lo stesso.. ho risolto mettendo getVar.
    Invece la "funzione" per il telefono non va..mica ti viene in mente qualcosa?
    codice:
    $telefono = JRequest::getString('telefono','','post');  
    $pattern6 = '/^([0-9]{1,13})([/\-\' ']{0,1})([0-9]{0,10})$/';
    if ( !preg_match($pattern6, $telefono) || $telefono < 99999) ){
      $messaggi[] = "Inserire un numero di telefono valido";
    }

  4. #4
    anche qui del secondo confronto non m'interessa...ho provato a toglierlo ma non sembra essere quello il problema.

  5. #5
    usi lo slash come delimitatore e poi lo riutilizzi nella classe centrale [/\-' ']

    Cambia delimitatore, usa per es. #

    Poi non capisco i due apici e lo spazio... per l'apice devi backslasharlo, per lo spazio devi usare \s, poi c'è un altro apice... cos'è?
    La verita' è che... tu sei il debole, e io sono la tirannia degli uomini malvagi, ma ci sto provando ringo, ci sto provando con grandissima fatica a diventare il pastore..

  6. #6
    ok cambio il delimitatore... per il resto probabilmente hai ragione ma avevo usato le stesse funzioni per controlli js e funzionavano.. con ' ' indico lo spazio. provo a sostituire con \s.
    Grazie

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.