/**
  * 
  * @param type $userid
  * @param type $station_code
  * @return boolean
  */
 public static function export_data($userid = 0, $station_code = 0)
 {
     $user = User::load($userid);
     if ($user->getEnableMySQL()) {
         $BD = new IMETOS($user->getIdMySQL(), $user->getServerMySQL(), $user->getDatabaseMySQL(), $user->getUserMySQL(), $user->getPasswMySQL());
         $station = Station::load($BD, $station_code, false, $userid);
         $station->loadSensors($BD);
         $stationSensorsList = $station->getAvailableSensors();
         $q_config = $station->getConfig();
         // problema
         //
         $datas = array();
         $enca1 = "";
         $enca2 = "FECHA";
         list($querys, $enca1, $enca2) = $q_config->runQuery($BD, $station);
         if (!empty($querys)) {
             foreach ($querys as $key_query => $query) {
                 if ($BD->sql_select($query, $results)) {
                     while ($row = $results->fetch(PDO::FETCH_ASSOC)) {
                         $datas[$row['f_read_time']][$key_query] = $row;
                     }
                 }
             }
             // grabo el archivo
             $archivo = TEMPORALES . $q_config->getNombreArchivo();
             $fp = fopen($archivo, 'w');
             if ($q_config->getEncabezado()) {
                 fwrite($fp, $enca1 . "\n");
                 fwrite($fp, $enca2 . "\n");
             }
             foreach ($datas as $fecha => $data) {
                 $cadena = date("Y-m-d H:i:s", $fecha) . chr($q_config->getSeparador2());
                 foreach ($data as $valor) {
                     foreach ($valor as $key_valor2 => $valor2) {
                         if ($key_valor2 != 'f_read_time') {
                             $cadena .= $valor2 . chr($q_config->getSeparador2());
                         }
                     }
                 }
                 if (substr($cadena, -strlen(chr($q_config->getSeparador2())) == chr($q_config->getSeparador2()))) {
                     $cadena = substr($cadena, 0, -strlen(chr($q_config->getSeparador2())));
                 }
                 fwrite($fp, $cadena . "\n");
             }
             fclose($fp);
             // se creo el archivo
             if ($last_id = Log::add($userid, 'export_data', $archivo)) {
                 return $last_id;
             } else {
                 echo "No se puedo insertar el mensaje en el log<br>";
             }
         } else {
             echo "Error en las consultas.<br>";
         }
     } else {
         echo "No existe la información de la conexión para la consulta.<br>";
     }
     return false;
 }
Exemplo n.º 2
0
        $query = $pdo_object->prepare("select * from {$this->table}");
        $query->execute();
    }
    //Stationクラス:表示の関数
    public function show()
    {
        try {
            $pdo_object = new PDO('mysql:host=localhost;dbname=Challenge_db;charset=cp932', 'kato', 'kr890122');
        } catch (PDOException $Exception) {
            die('接続に失敗しました:' . $Exception->getMessage());
        }
        $query = $pdo_object->prepare("select * from {$this->table}");
        $query->execute();
        while ($row = $query->fetch(PDO::FETCH_OBJ)) {
            echo $row->stationID . "<br>";
            echo $row->stationName . "<br>";
        }
    }
    //Stationクラス:初期化処理
    public function __construct()
    {
        $this->table = 'station';
    }
}
$user = new Human();
$user->load();
$user->show();
$station = new Station();
$station->load();
$station->show();
$pdo_object = null;