} if (!isset($table)) { $table = ''; } $kasitellaan_tiedosto = FALSE; require "inc/pakolliset_sarakkeet.inc"; if (isset($_FILES['userfile']) and (is_uploaded_file($_FILES['userfile']['tmp_name']) === TRUE or $cli and trim($_FILES['userfile']['tmp_name']) != '')) { $kasitellaan_tiedosto = TRUE; if ($_FILES['userfile']['size'] == 0) { lue_data_echo("<font class='error'><br>" . t("Tiedosto on tyhjä") . "!</font>"); $kasitellaan_tiedosto = FALSE; } $path_parts = pathinfo($_FILES['userfile']['name']); $ext = strtoupper($path_parts['extension']); lue_data_echo("<font class='message'>" . t("Tarkastetaan lähetetty tiedosto") . "...<br><br></font>"); $retval = tarkasta_liite("userfile", array("XLSX", "XLS", "ODS", "SLK", "XML", "GNUMERIC", "CSV", "TXT", "DATAIMPORT")); if ($retval !== TRUE) { lue_data_echo("<font class='error'><br>" . t("Väärä tiedostomuoto") . "!</font>"); $kasitellaan_tiedosto = FALSE; } } elseif (isset($api_kentat) and count($api_kentat) > 0) { $kasitellaan_tiedosto = TRUE; } $muutetut_sopimusrivitunnukset = array(); if ($kasitellaan_tiedosto) { $lue_data_autoid = file_exists("lue_data_autoid.php"); /** * Käsiteltävän filen nimi * */ $kasiteltava_tiedoto_path = $_FILES['userfile']['tmp_name']; if (isset($api_kentat) and count($api_kentat) > 0) {
$rivi["kentta08"] = $kentta08; $rivi["kentta09"] = $kentta09; $rivi["konserni"] = $konserni; $rivi["kokopaiva"] = $kokopaiva; $tee = "SYOTA"; } elseif ($kukarow['yhtio'] == 'artr' and $toim == 'AUTOMANUAL' and $automanual_uutinen == '') { echo "<font class='error'>" . t("Uutisen näkyvyys on valittava!") . "</font><br><br>"; $rivi["kentta01"] = $otsikko; $rivi["kentta02"] = $uutinen; $rivi["kentta09"] = $kentta09; $rivi["konserni"] = $konserni; $rivi["kokopaiva"] = $kokopaiva; $tee = "SYOTA"; } elseif (strlen($otsikko) > 0 and strlen($uutinen) > 0 and count($lang) > 0) { $liitostunnus = 0; $retval = tarkasta_liite("userfile"); if ($retval !== true) { echo $retval; } else { $uusi_filu = muuta_kuvan_koko(0, 130, "thumb", "tmp", "userfile"); $kuva = tallenna_liite("userfile", "kalenteri", 0, $selite); if ($uusi_filu != "") { unlink($uusi_filu); } } $uutinen = nl2br(strip_tags($uutinen, '<a>')); $otsikko = nl2br(strip_tags($otsikko, '<a>')); $uutinen = mysql_real_escape_string($uutinen); // ollaanko valittu konsernitasoinen uutinen if ($konserni != '') { $konserni = $yhtiorow['konserni'];
echo "<font class='message'>" . t("Tarkastetaan lähetetty tiedosto") . "...</font><br><br>\n"; $alkuperainen_filenimi = $_FILES['userfile']['name']; $kasiteltava_tiedosto_path = $_FILES['userfile']['tmp_name']; if ($_FILES['userfile']['size'] == 0) { echo "<font class='error'>" . t("Tiedosto on tyhjä") . "!</font><br>\n"; $kasitellaan_tiedosto = FALSE; } $path_parts = pathinfo($_FILES['userfile']['name']); $kasitellaan_tiedosto_tyyppi = strtoupper($path_parts['extension']); $sallitut_tyypit = array("XLSX", "DATAIMPORT"); // Jos meillä on ssconvert asennettuna, voidaan käsitellä myös XLS tiedostoja if (is_executable("/usr/bin/ssconvert")) { $sallitut_tyypit[] = "XLS"; } // Vain Excel! $return = tarkasta_liite("userfile", $sallitut_tyypit); if ($return !== TRUE) { echo "<font class='error'>{$return}</font>\n"; $kasitellaan_tiedosto = FALSE; } if (!is_executable("/usr/bin/split")) { echo "<font class='error'>" . t("Split komento ei ole asennettu") . "!</font><br>\n"; $kasitellaan_tiedosto = FALSE; } if (preg_match('/[^A-Za-z0-9\\. \\-\\_]/', $alkuperainen_filenimi)) { echo "<font class='error'>" . t("Tiedostonimessä kiellettyjä merkkejä") . ". " . t("Sallitut merkit") . ": A-Z 0-9</font><br>\n"; $kasitellaan_tiedosto = FALSE; } // Tehdään Excel -> CSV konversio if ($kasitellaan_tiedosto === TRUE and $kasitellaan_tiedosto_tyyppi == "XLS") { $kasiteltava_tiedosto_path_csv = $kasiteltava_tiedosto_path . ".DATAIMPORT";
$tee = ''; $error++; } if (!isset($_FILES['userfile']['error']) or $_FILES['userfile']['error'] == 4) { echo "<font class='error'>", t("Et valinnut tiedostoa"), "!</font><br/>"; $tee = ''; $error++; } else { $path_parts = pathinfo($_FILES['userfile']['name']); if (strtolower($path_parts['extension']) != 'xls' and strtolower($path_parts['extension']) != 'txt' and strtolower($path_parts['extension']) != 'csv') { echo "<font class='error'>", t("Virheellinen tiedostopääte"), "!</font><br/>"; $tee = ''; $error++; } if (is_uploaded_file($_FILES['userfile']['tmp_name']) == TRUE) { $file = tarkasta_liite("userfile", array("XLS", "TXT", "CSV")); } else { $error++; } if ($file === FALSE) { $error++; } } if ($error == 0) { $tuo_sarake = (int) $tuotenumeron_sarake - 1; $teh_sarake = (int) $tehtaan_saldon_sarake - 1; if (strtolower($path_parts['extension']) == 'xls') { require_once 'excel_reader/reader.php'; // ExcelFile $data = new Spreadsheet_Excel_Reader(); // Set output Encoding.
} if (function_exists($funktio)) { @$funktio($t, $i, $result, $tunnus, $virhe, $trow); } if (isset($virhe[$i]) and $virhe[$i] != "") { $errori = 1; } if (mysql_num_rows($al_res) != 0 and strtoupper($pakollisuuden_tarkistus_rivi['selitetark_3']) == "PAKOLLINEN") { if ((mysql_field_type($result, $i) == 'real' or mysql_field_type($result, $i) == 'int') and (double) str_replace(",", ".", $t[$i]) == 0 or mysql_field_type($result, $i) != 'real' and mysql_field_type($result, $i) != 'int' and trim($t[$i]) == "") { $virhe[$i] .= t("Tieto on pakollinen") . "!"; $errori = 1; } } // Tarkastammeko liitetiedoston? if (is_array($tiedostopaate) and is_array($_FILES["liite_{$i}"]) and $_FILES["liite_{$i}"]["size"] > 0) { $viesti = tarkasta_liite("liite_{$i}", $tiedostopaate); if ($viesti !== true) { $virhe[$i] = $viesti; $errori = 1; } } } // Jos toimittaja/asiakas merkataan poistetuksi niin unohdetaan kaikki errortsekit... if ((isset($toimtyyppi) and $toimtyyppi == "P" or isset($toimtyyppi) and $toimtyyppi == "PP" or isset($asiak_laji) and $asiak_laji == "P") and $errori != '') { unset($virhe); $errori = ""; } elseif ($errori != '' and isset($yllapitonappi)) { echo "<font class='error'>" . t("Jossain oli jokin virhe! Ei voitu paivittää!") . "</font>"; } // Luodaan tietue if ($errori == "") {
if ($valkoodi != $yhtiorow["valkoodi"] and $gok == 0) { // koitetaan hakea maksupäivän kurssi $query = "SELECT *\n FROM valuu_historia\n WHERE kotivaluutta = '{$yhtiorow['valkoodi']}'\n AND valuutta = '{$valkoodi}'\n AND kurssipvm <= '{$tpv}-{$tpk}-{$tpp}'\n ORDER BY kurssipvm DESC\n LIMIT 1"; $valuures = pupe_query($query); if (mysql_num_rows($valuures) == 1) { $valuurow = mysql_fetch_assoc($valuures); $kurssi = $valuurow["kurssi"]; } else { echo "<font class='error'>" . t("Ei löydetty sopivaa kurssia!") . "</font><br>\n"; $gok = 1; } } if (is_uploaded_file($_FILES['tositefile']['tmp_name'])) { // ei koskaan päivitetä automaattisesti $tee = ""; $retval = tarkasta_liite("tositefile", array("XLSX", "XLS", "ODS", "SLK", "XML", "GNUMERIC", "CSV", "TXT")); if ($retval === true) { /** * PHPExcel kirjasto * */ if (@(include "PHPExcel/Classes/PHPExcel/IOFactory.php")) { } elseif (@(include "PHPExcel/PHPExcel/IOFactory.php")) { } /** * Tunnistetaan tiedostomuoto * */ $inputFileType = PHPExcel_IOFactory::identify($_FILES['tositefile']['tmp_name']); /** * Luodaan readeri * */ $objReader = PHPExcel_IOFactory::createReader($inputFileType);