/** * new banksta store in database bankstaDoUpload() method and returns preprocessed * bank statement hash for further usage * * @param string $bankstadata array returned from * * @return string */ public function bankstaPreprocessingPrivatDbf($bankstadata) { $result = ''; if (!empty($bankstadata)) { if (file_exists(self::BANKSTA_PATH . $bankstadata['savedname'])) { //processing raw data $newHash = $bankstadata['hash']; $result = $newHash; $newFilename = $bankstadata['filename']; $newAdmin = whoami(); $payId = vf($this->altCfg['UKV_BSPB_PAYID'], 3); $dbf = new dbf_class(self::BANKSTA_PATH . $bankstadata['savedname']); $num_rec = $dbf->dbf_num_rec; $importCounter = 0; for ($i = 0; $i <= $num_rec; $i++) { $eachRow = $dbf->getRowAssoc($i); if (!empty($eachRow)) { if (@$eachRow[self::PB_BANKSTA_CONTRACT] != '') { $newDate = date("Y-m-d H:i:s"); $newContract = trim($eachRow[self::PB_BANKSTA_CONTRACT]); $newContract = mysql_real_escape_string($newContract); $newSumm = trim($eachRow[self::PB_BANKSTA_SUMM]); $newSumm = mysql_real_escape_string($newSumm); $newAddress = iconv(self::BANKSTA_IN_CHARSET, self::BANKSTA_OUT_CHARSET, $eachRow[self::PB_BANKSTA_ADDRESS]); $newAddress = mysql_real_escape_string($newAddress); $newRealname = iconv(self::BANKSTA_IN_CHARSET, self::BANKSTA_OUT_CHARSET, $eachRow[self::PB_BANKSTA_REALNAME]); $newRealname = mysql_real_escape_string($newRealname); $newNotes = iconv(self::BANKSTA_IN_CHARSET, self::BANKSTA_OUT_CHARSET, $eachRow[self::PB_BANKSTA_NOTES]); $newNotes = mysql_real_escape_string($newNotes); $pbDate = $eachRow[self::PB_BANKSTA_DATE]; $pbDate = strtotime($pbDate); $pbDate = date("Y-m-d", $pbDate); $newPdate = iconv(self::BANKSTA_IN_CHARSET, self::BANKSTA_OUT_CHARSET, $pbDate); $newPdate = mysql_real_escape_string($newPdate); $newPtime = iconv(self::BANKSTA_IN_CHARSET, self::BANKSTA_OUT_CHARSET, curtime()); $newPtime = mysql_real_escape_string($newPtime); $this->bankstaCreateRow($newDate, $newHash, $newFilename, $newAdmin, $newContract, $newSumm, $newAddress, $newRealname, $newNotes, $newPdate, $newPtime, $payId); $importCounter++; } } } log_register('UKV BANKSTA IMPORTED ' . $importCounter . ' ROWS'); } else { show_error(__('Strange exeption')); } } else { throw new Exception(self::EX_BANKSTA_PREPROCESS_EMPTY); } return $result; }
$db->Connect(); $db->Query("SET NAMES 'utf8'"); $db->Query("SET CHARACTER SET utf8"); $db->Query("truncate table {$tabelaNome}"); $dbf = new dbf_class($fileDbf); $num_rec = $dbf->dbf_num_rec; $num_field = $dbf->dbf_num_field; #$num_rec =5620; $qtdeErr = 0; $field_names = $dbf->dbf_names; foreach ($field_names as $indice => $campo) { $campos .= $campo['name'] . ','; } $campos = substr($campos, 0, strlen($campos) - 1); for ($i = 0; $i < $num_rec; $i++) { $row = $dbf->getRowAssoc($i); foreach ($field_names as $ind => $campo) { if (in_array($campo['name'], $arrCampoData)) { $valores .= "'" . implode('', array_reverse(explode("/", $row[$campo['name']]))) . "',"; } else { $valores .= "'" . addslashes($row[$campo['name']]) . "',"; } } $valores = substr($valores, 0, strlen($valores) - 1); $sqlInsert = ""; $sqlInsert = "insert into {$tabelaNome} ({$campos}) value ({$valores});"; #inclui os registros na respectiva tabela do BD $inserido = $db->Query($sqlInsert); if (!$inserido) { $qtdeErr++; $arrValores[] = $valores;