Exemplo n.º 1
0
 public function batchImportQuestions($lines, $del, $enc)
 {
     $count = 0;
     // Clear current questions..
     if (isset($_POST['clear'])) {
         $que = array();
         $chop = empty($_POST['cat']) ? $_POST['catall'] : $_POST['cat'];
         if (!empty($chop)) {
             $q = mysql_query("SELECT `question` FROM `" . DB_PREFIX . "faqassign`\n\t          WHERE `itemID` IN(" . implode(',', $chop) . ")\n\t\t\t  AND `desc`      = 'category'\n\t\t\t  GROUP BY `question`\n\t\t\t  ORDER BY `itemID`\n\t\t\t  ");
             while ($QUE = mysql_fetch_object($q)) {
                 $que[] = $QUE->question;
             }
             if (!empty($que)) {
                 mysql_query("DELETE FROM `" . DB_PREFIX . "faq` WHERE `id` IN(" . implode(',', $que) . ")") or die(mswMysqlErrMsg(mysql_errno(), mysql_error(), __LINE__, __FILE__));
                 if (mswRowCount('faq') == 0) {
                     @mysql_query("TRUNCATE TABLE `" . DB_PREFIX . "faq`");
                     @mysql_query("TRUNCATE TABLE `" . DB_PREFIX . "faqassign`");
                 }
             }
         }
     }
     // Upload CSV file..
     if (is_uploaded_file($_FILES['file']['tmp_name'])) {
         // If uploaded file exists, read CSV data...
         $handle = fopen($_FILES['file']['tmp_name'], 'r');
         if ($handle) {
             while (($CSV = fgetcsv($handle, $lines, $del, $enc)) !== false) {
                 // Clean array..
                 $CSV = array_map('trim', $CSV);
                 mysql_query("INSERT INTO `" . DB_PREFIX . "faq` (\n        `ts`,\n        `question`,\n        `answer`\n        ) VALUES (\n        UNIX_TIMESTAMP(UTC_TIMESTAMP),\n        '" . mswSafeImportString($CSV[0]) . "',\n        '" . mswSafeImportString($CSV[1]) . "'\n        )") or die(mswMysqlErrMsg(mysql_errno(), mysql_error(), __LINE__, __FILE__));
                 $ID = mysql_insert_id();
                 // Assign categories..
                 $assign = empty($_POST['cat']) ? $_POST['catall'] : $_POST['cat'];
                 if (!empty($assign) && $ID > 0) {
                     foreach ($assign as $aID) {
                         mysql_query("INSERT INTO `" . DB_PREFIX . "faqassign` (\n            `question`,`itemID`,`desc`\n            ) VALUES (\n            '{$ID}','{$aID}','category'\n            )") or die(mswMysqlErrMsg(mysql_errno(), mysql_error(), __LINE__, __FILE__));
                     }
                 }
                 ++$count;
             }
             fclose($handle);
         }
     }
     // Clear temp file..
     if (file_exists($_FILES['file']['tmp_name'])) {
         @unlink($_FILES['file']['tmp_name']);
     }
     // Rebuild sequence..
     faqCentre::rebuildQueSequence();
     return $count;
 }