Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043

    come rendere obbligatorio campo data?

    ciao, ho il campo $data_nascita che vorrei rendere obbligatorio ma anche se lo compilo mi da il messaggio d'errore, come se non l'avessi compilato:

    Codice PHP:
    <?
                                            $data
    =date("Y-m-d");
                                            
    $giorno_sel=substr($row['data_nascita'],8,2);
                                            
    $mese_sel=substr($row['data_nascita'],5,2);
                                            
    $anno_sel=substr($row['data_nascita'],0,4);
                                            
    ?>
                                            <select name="gg1">
                                            <option value="">00</option>
                                            <?
                                            
    for ($n=0;$n<=31;$n=$n+1){$n=sprintf("%02d",$n);
                                            
    ?>
                                            <option value=<?=$n?> <? if ($_POST["gg1"] == "$n") echo "SELECTED"?>><?=$n?></option>
                                            <? }?>
                                            </select>
                                            <select name="mm1">
                                            <option value="">00</option>
                                            <?
                                            
    for ($n=0;$n<=12;$n=$n+1){$n=sprintf("%02d",$n);
                                            
    ?>
                                            <option value=<?=$n?> <? if ($_POST["mm1"] == "$n") echo "SELECTED"?>><?=$n?></option>
                                            <? }?>
                                            </select>
                                            <select name="aa1">
                                            <option value="">0000</option>
                                            <?
                                            
    for ($n=1940;$n<=1998;$n=$n+1){$n=sprintf("%02d",$n);
                                            
    ?>
                                            <option value=<?=$n?> <? if ($_POST["aa1"] == "$n") echo "SELECTED"?>><?=$n?></option>
                                            <? }?>
                                            </select>    






    $aa1."-".$mm1."-".$gg1 = $data_nascita;



    if ($_POST["data_nascita"] != "") {

    ok

    else {

    errore

    }

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    non fai il post di una data ma di tre select che rappresntano giorno mese anno, quindi $_POST["data_nascita"] sarà sempre non inizializzato

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    E quindi come posso risolvere?

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Non si inizializza facendo così?

    $aa1."-".$mm1."-".$gg1 = $data_nascita;

  5. #5
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    dovrai fare un controllo di questo tipo

    Codice PHP:
    if(!isste($_POST['gg1']) || !isste($_POST['mm1']) || !isste($_POST['aa1']))
    {
           echo 
    "errore!!! manca un elemnto della data";
    }
    else
    {
         if(!
    checkdate($_POST['mm1'],$_POST['gg1'],$_POST['aa1']))
         {
               echo 
    "errore!!! data non valida";
         }
         else
         {
              echo 
    "OK data valida";
         }


  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Grazie ora funziona

  7. #7
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    ps la funzione checkdate è una funzione di php che ti controlla se la data è valida
    altrimenti uno potrebbe scrivere 30/02/2000 ma il 30 febbraio come sappiamo non esiste

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Ottimo!, grazie della spiegazione

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.