function Disallow() { $this->CheckAdminPrivs('robot'); $name = trim($this->Get['name']); $disallow = 'disallow1' == $this->Code ? 1 : 0; $sql = "update `".TABLE_PREFIX."system_robot` set `disallow`='{$disallow}' where `name`='{$name}'"; $this->DatabaseHandler->Query($sql); $sql = "select `name`,`disallow` from `".TABLE_PREFIX."system_robot` where `disallow`=1"; $query = $this->DatabaseHandler->Query($sql); $robot_config = ConfigHandler::get('robot'); $robot_config['list'] = array(); while ($row = $query->GetRow()) { $robot_config['list'][$row['name']]['disallow'] = $row['disallow']; } $configHandler = new ConfigHandler(); $configHandler->set('robot',$robot_config); $disallow_string = "User-agent: {$name} Disallow: / "; $load = new Load(); $load->lib('io'); $IoHandler = new IoHandler(); $robots_path = ROOT_PATH . 'robots.txt'; $robots_string_new = $robots_string = $IoHandler->ReadFile($robots_path); $disallow_string_strpos = strpos($robots_string,$disallow_string); if ($disallow && false===$disallow_string_strpos) { $robots_string_new = $disallow_string . $robots_string_new; } elseif (!$disallow && false!==$disallow_string_strpos) { $robots_string_new = str_replace($disallow_string,"",$robots_string_new); } if ($robots_string_new!=$robots_string) { $return = $IoHandler->WriteFile($robots_path,$robots_string_new); if (!$return) { $this->Messager("写入 <b>{$robots_path}</b> 文件失败,请检查是否有可读写的权限",null); } } $this->Messager("修改成功"); }