Exemplo n.º 1
0
 public function actionGetSlice($num)
 {
     $parser = new MySQLParser();
     $parser->fileName = $this->getFilePath();
     $sql = $parser->getSlice($num);
     if ($sql) {
         $arrReplace = array('{adminName}', '{adminPass}', '{adminSalt}', '{adminEmail}', '{dbPrefix}', '{siteName}', '{siteKeywords}', '{siteDescription}');
         $arrReplaceVal = array(Yii::app()->user->getState('adminName'), Yii::app()->user->getState('adminPass'), Yii::app()->user->getState('adminSalt'), Yii::app()->user->getState('adminEmail'), Yii::app()->user->getState('dbPrefix'), Yii::app()->user->getState('siteName'), Yii::app()->user->getState('siteKeywords'), Yii::app()->user->getState('siteDescription'));
         $sql = str_replace($arrReplace, $arrReplaceVal, $sql);
         $matched = preg_match("/CREATE TABLE IF NOT EXISTS `([^`]+)`/", $sql, $matches);
         if (!$matched) {
             $matched = preg_match("/CREATE TABLE `([^`]+)`/", $sql, $matches);
         }
         if ($matched) {
             echo 'Creating table `' . $matches[1] . '` ... ';
         }
         $command = Yii::app()->db->createCommand($sql);
         $command->execute();
         $command->reset();
         if ($matched) {
             echo 'OK<br/>';
         }
     }
 }