public function actionUpload() { parent::actionUpload(); Yii::import("ext.EAjaxUpload.qqFileUploader"); $folder = $_SERVER['DOCUMENT_ROOT'] . Yii::app()->request->baseUrl . '/upload/'; // folder for uploaded files $allowedExtensions = array("csv"); $sizeLimit = (int) Yii::app()->params['sizeLimit']; // maximum file size in bytes $uploader = new qqFileUploader($allowedExtensions, $sizeLimit); $result = $uploader->handleUpload($folder, true); $row = 0; if (($handle = fopen($folder . $uploader->file->getName(), "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { if ($row > 0) { $model = Absrule::model()->findByPk((int) $data[0]); if ($model === null) { $model = new Absrule(); } $model->absruleid = (int) $data[0]; $model->absscheduleid = (int) $data[1]; $model->difftimein = $data[2]; $model->difftimeout = $data[3]; $model->absstatusid = (int) $data[4]; $model->recordstatus = 1; try { if (!$model->save()) { $errormessage = $model->getErrors(); if (Yii::app()->request->isAjaxRequest) { echo CJSON::encode(array('status' => 'failure', 'div' => $errormessage)); } } } catch (Exception $e) { $errormessage = $e->getMessage(); if (Yii::app()->request->isAjaxRequest) { echo CJSON::encode(array('status' => 'failure', 'div' => $errormessage)); } } } $row++; } fclose($handle); } $result = htmlspecialchars(json_encode($result), ENT_NOQUOTES); echo $result; }
public function actionUpload() { parent::actionUpload(); $folder = $_SERVER['DOCUMENT_ROOT'] . Yii::app()->request->baseUrl . '/upload/'; // folder for uploaded files $file = $folder . basename($_FILES['uploadfile']['name']); if (move_uploaded_file($_FILES['uploadfile']['tmp_name'], $file)) { $row = 0; if (($handle = fopen($file, "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { if ($row > 0) { $model = Absrule::model()->findByPk((int) $data[0]); if ($model === null) { $model = new Absrule(); } $model->absruleid = (int) $data[0]; $absschedule = Absschedule::model()->findbyattributes(array('absschedulename' => $data[1])); if ($absschedule != null) { $model->absscheduleid = $absschedule->absscheduleid; } $model->difftimein = $data[2]; $model->difftimeout = $data[3]; $absstatus = Absstatus::model()->findbyattributes(array('shortstat' => $data[4])); if ($absstatus != null) { $model->absstatusid = $absstatus->absstatusid; } $model->recordstatus = 1; try { if (!$model->save()) { $this->messages = $this->messages . Catalogsys::model()->getcatalog(' upload error at ' . $data[0]); } } catch (Exception $e) { $this->messages = $this->messages . $e->getMessage(); } } $row++; } } else { $this->messages = $this->messages . ' memory or harddisk full'; } fclose($handle); } else { $this->messages = $this->messages . ' check your directory permission'; } if ($this->messages == '') { $this->messages = 'success'; } echo $this->messages; }