• User

    fomato data fra php e access

    Ciao a tutti,
    ho creatro questo script che collega php e access

    
    $matricola=$_POST[matricola];
    $data="#".date("m/d/Y")."#";
    $esito=$_POST[esito];
    $id=$_POST[id];
    $altro=$_POST[altro];
    $datric=$_POST[dat_ric];
    $ora=$_POST[ora];
    echo $matricola.$data.$esito.$id."altro: ".$altro;
    if ($altro=="NR"||"IRR" ||"NE" ){
    $query="UPDATE dati SET [esito]='$altro',[uso]=3,[data]='$data',[matricola]=$matricola,[data_tel]= $data
        where [id]=$id";    }
    if ($esito=="OK"||"Noin"||"Noa" ){
             $query="UPDATE dati SET [uso] =3,
                               [esito] ='$esito',[matricola] =$matricola,[data_tel]= $data
                 where [id]=$id";} 
     
    if (!empty($datric)){
    $query="UPDATE dati SET [data_ric]=$dataric,[uso]=2,[matricola]=$matricola,[ora_ric]='$ora'
        where [id]=$id";}
    if (!empty($query)){
    $dsource="c:\outbound.mdb" ;
    $cn_string="Provider=Microsoft.Jet.OLEDB.4.0;" ; 
    $cn_string.="Data Source=".$dsource.";";
    if (!file_exists($dsource) ){
    die("Il database non esiste") ;
    }
    $cn= new COM("ADODB.Connection");
    $cn->Open($cn_string) ;
    echo "</br>".$query;
    $rs= new COM("ADODB.Recordset") ;
    $rs->Open($query,$cn) ;
    $rs= null ;
    $cn->Close() ;
    $cn= null ; 
    ?>
    
    

    Lo script funziona abbastanza bene.
    Però adesso ho un problema con le date da inviare in access, infatti access (2003) accetta le date in formato mm/gg/aaaa e poi in tabella le mostra gg/mm/aaaa.
    Io però devo passargli una data (datric) che è in formato italiano, come posso girarla nel formato inglese?

    grazie a tutti


  • Consiglio Direttivo

    Sempre con la funzione date();
    (http://it.php.net/manual/it/function.date.php)
    Ti imposti il formato per come ti serve 😉


  • User

    In che modo? la data mi arriva in formato italiano dal POST, e non reisco a capire come girarla


  • Consiglio Direttivo

    mktime(); per avere la unix stamp della data che arriva e poi usi date(); per sistemarla per come ti serve 😉


  • User

    :ciauz:```

    $datric="04/02/2008";
    $YY = substr($datric, 6, 4);
    $mm = substr($datric, 3, 2);
    $dd = substr($datric, 0, 2);
    $data_cor=date("m/d/Y",mktime(0,0,0,$mm,$dd,$YY));

     
    Grazie, ho capito, cosi passo da gg/mm/aaaa a mm/gg/aaaa:ciauz:

  • Consiglio Direttivo

    [php]
    $datric="04/02/2008";
    $YY = substr($datric, 6, 4);
    $mm = substr($datric, 3, 2);
    $dd = substr($datric, 0, 2);
    [/php]
    per non perderti con i substr potresti, se preferisci, usare questo:
    [PHP]list ($dd,$mm,$YY) = explode ("/", $datric);[/PHP]
    😉