• User Newbie

    leggere campo data da database sql server con php

    Salve,
    ho un problema riguardo la lettura di un campo data di un database sql server tramite php.

    Ho questo tipo di connessione al database sql server:
    [PHP]
    // parametri di connessione
    $server = "indirizzo ip";
    $InfoConnessione = array(
    "Database"=>"nome database",
    "UID"=>"utente database",
    "PWD"=>"password database"
    );

        // connessione al database
        $connessione = sqlsrv_connect($server, $InfoConnessione);
        if( $connessione === false ) {
             die( print_r( sqlsrv_errors(), true));
        }
    

    [/PHP]

    solitamente uso queste righe di codice per eseguire query e quindi leggere il valore dei campi nelle tabelle:
    [PHP]
    $querymssql = "SELECT CampoData FROM Tabella WHERE codice = '1234'";

        $esecuz_query = sqlsrv_query( $connessione, $querymssql);
        if( $esecuz_query === false ) {
             die( print_r( sqlsrv_errors(), true));
        }
        
        // stampa dei risultati
        while($obj = sqlsrv_fetch_object( $esecuz_query)) {
          $campodata = $obj->CampoData;
        }
    

    [/PHP]

    Purtroppo funziona con tutti i campi di tipo stringa e intero, ma con i campi data mi restituisce "Catchable fatal error: Object of class DateTime could not be converted to string in...".

    Sapreste aiutarmi?
    Grazie in anticipo


  • User Attivo

    Il problema dovrebbe essere in CampoData che è un oggetto DateTime e non può essere assegnato a $campodata. Tramite il comando format dovresti riuscire ad assegnare il valore formattato di DateTime come stringa alla variabile campodata.

    Guarda qui la documentazione php.net/manual/en/datetime.format.php .


  • User Newbie

    Grazie funziona perfettamente!

    ho aggiunto:
    echo $campodata->format('d/m/Y');