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

    [PHP]Campo date sempre "0000-00-00"[/PHP]

    Buonasera a tutti.
    Premetto che sono alle prime armi, sto creando un front-end per l'inserimento di dati in un database mysql.

    Il problema che sto riscontrando è che, quando invio i dati dal form, i campi vengono tutti popolati correttamente tranne quelli "date" che rimangono entrambi nel formato 0000-00-00.
    I campi data del form sono inseriti entrambi scegliendo i valori da tre select (combo box) giorno, mese, anno.

    Le istruzioni del file interessate per l'inserimento dei dati sono le seguenti:

    //Formattazione data
    Codice PHP:
    $data_incarico=$_POST[anno_inc]."/".$_POST[mese_inc]."/".$_POST[giorno_inc];
    $data_consegna=$_POST[anno_cons]."/".$_POST[mese_cons]."/".$_POST[giorno_cons];

    $sql="INSERT INTO progetti (codice_progetto, anno_rif, committente, data_incarico,    data_consegna, dettaglio_progetto)  VALUES('$_POST[progetto]','$_POST[anno]','$_POST[committente]', '$data_incarico', '$data_consegna', '$_POST[dettaglio_progetto]')"
    Ho stampato le variabili $data_incarico e $data_consegna e ho verificato che il loro contenuto è nel formato corretto.

    Questa è una delle tabelle del mio DB

    CREATE TABLE `progetti` (
    `codice_progetto` char(10) NOT NULL,
    `anno_rif` year(4) NOT NULL,
    `committente` varchar(200) NOT NULL,
    `data_incarico` date NOT NULL,
    `data_consegna

  2. #2
    Utente di HTML.it L'avatar di hyde82
    Registrato dal
    Feb 2010
    Messaggi
    243
    dai un :
    var_dump($POST);

    e posta il contenuto dell'array.

  3. #3
    Mi sono appena accorta di essere riuscita a pubblicare questo post. Non avevo ricevuto esito positivo, si bloccava la pagina. Purtroppo l'ho appena ripubblicato, spero che qualcuno se ne accorga e elimini l'ultimo.


    Grazie per la risposta, l'esito dell'istruzione che mi hai suggerito è:

    NULL 2008 /2/ 29

    quel NULL mi inquieta...ma non so come interpretarlo...

  4. #4
    Grazie al tuo suggerimento sono andata a controllare l'assegnazione dei campi giorno, mese, anno, e ho trovato uno spazio a destra e a sinistra della variabile ---- \" $i \" ----- nel ciclo for del giorno e dell'anno. Queste erano le istruzioni per la creazione delle select.

    [mysql]
    <div><label >Data Incarico</label>

    <select class="input_height" name="giorno_inc">
    <option value="" selected="selected"> </option>[/mysql]

    Codice PHP:
    <?php
                
    for($i=1;$i<32;$i++){
                echo 
    "<option value=\" $i \">$i</option>\n";   
                }
                
    ?>
    [mysql]</select>

    <select class="input_height" name="mese_inc">
    <option value="" selected="selected"> </option>[/mysql]

    Codice PHP:
    <?php
                
    for($i=1;$i<13;$i++){
                echo 
    "<option value=\"$i\">$i</option>\n";
                }
                
    ?>
    [mysql]</select >

    <select class="input_height" name="anno_inc">
    <option value="" selected="selected"> </option>[/mysql]
    Codice PHP:
    <?php
                
    for($i=1990;$i<2050;$i++){
                echo 
    "<option value=\" $i \">$i</option>\n";
                }
                
    ?>
    [mysql]</select ></div>[/mysql]


    Eliminati quegli spazi, funziona perfettamente. Ora cercherò di capire il perché. Grazie mille per il suggerimento.

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.