本文整理汇总了PHP中GO函数的典型用法代码示例。如果您正苦于以下问题:PHP GO函数的具体用法?PHP GO怎么用?PHP GO使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GO函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: HackOff
/**
* Вызывается при запросе несуществующей
* страницы или ошибки и использования спецсимволов в параметрах
* @param bool $LowProtect
* @param bool $Redirect
* @return void
*/
function HackOff($LowProtect = false, $Redirect = true)
{
global $config;
if (System::user()->isAdmin() || $LowProtect) {
if (defined('MAIN_SCRIPT') || defined('PLUG_SCRIPT') || !defined('ADMIN_SCRIPT')) {
if ($Redirect) {
GO(Ufu('index.php'));
}
} elseif (defined('ADMIN_SCRIPT')) {
GO(ADMIN_FILE);
}
} else {
if (System::config('security/hack_event') == 'alert') {
die(System::config('security/hack_alert'));
} elseif (System::config('security/hack_event') == 'ban') {
die('Вам был запрещен доступ к сайту, возможно система обнаружила подозрительные
действия с Вашей стороны. Если Вы считаете, что это произошло по ошибке, - обратитесь
в службу поддержки по e-mail ' . System::config('general/site_email') . '.');
} else {
if ($Redirect) {
GO(Ufu('index.php'));
}
}
}
}
示例2: IndexForumLogin
function IndexForumLogin()
{
if (!System::user()->Auth) {
System::site()->Login('');
System::user()->Def('forum_referrer', $_SERVER['HTTP_REFERER']);
} else {
GO(System::user()->Get('forum_referrer'), 202);
}
}
示例3: IndexForumMarkRead
function IndexForumMarkRead()
{
$mark_forums = array();
// Форумы на которых устанавливать метки
$forums_tree = ForumTree::Instance();
if (isset($_GET['forum'])) {
// Только внутри определённого форума
$forum = SafeDB($_GET['forum'], 11, int);
$mark_forums = $forums_tree->GetAllAccessForumId($forum);
} else {
// На всех форумах
$mark_forums = $forums_tree->GetAllAccessForumId();
}
$user_id = System::user()->Get('u_id');
if (System::user()->Auth) {
// Загружаем данные о прочтении тем пользователем
$read_data = Forum_Marker_GetReadData();
// Загружаем топики (агрегированы по forum_id)
$topics = ForumCacheGetTopics();
$del_where = '';
$insert_values = array();
$time = time();
foreach ($mark_forums as $forum_id) {
if (!isset($topics[$forum_id])) {
continue;
}
foreach ($topics[$forum_id] as $topic) {
$tid = SafeEnv($topic['id'], 11, int);
// Не прочитана или метка устарела
if (!isset($read_data[$topic['id']])) {
$insert_values[] = "'{$user_id}','{$tid}','{$time}'";
// Добавить новую метку
} elseif ($read_data[$topic['id']]['date'] < $topic['last_post']) {
$del_where .= "(`tid`='{$tid}' and `mid`= '{$user_id}') or ";
// Удалить текущую метку
$insert_values[] = "'{$user_id}','{$tid}','{$time}'";
// Добавить новую метку
}
}
}
// Удаляем устаревшие метки
if ($del_where != '') {
$del_where = substr($del_where, 0, -4);
// Удаляем .or.
System::database()->Delete('forum_topics_read', $del_where);
}
// Добавляем новые метки
// TODO: В будущем нужно перейти на InnoDB и использовать транзакции как в MySQL так и в FilesDB.
if (count($insert_values) > 0) {
foreach ($insert_values as $vals) {
System::database()->Insert('forum_topics_read', $vals);
}
}
}
GO(GetSiteUrl() . Ufu('index.php?name=forum' . (isset($forum) ? '&op=showforum&forum=' . $forum : ''), 'forum/' . (isset($forum) ? '{forum}/' : '')));
}
示例4: IndexForumSubscription
function IndexForumSubscription()
{
global $forum_lang;
$forums_tree = ForumTree::Instance();
// Проверки на доступ
if (CheckGet('topic')) {
// Тема
$topic_id = SafeEnv($_GET['topic'], 11, int);
System::database()->Select('forum_topics', "`id`='{$topic_id}'");
if (System::database()->NumRows() > 0) {
$topic = System::database()->FetchRow();
} else {
System::site()->AddTextBox($forum_lang['error'], $forum_lang['error_access_category']);
return;
}
if ($topic['delete'] == '1') {
// Тема на удалении
System::site()->AddTextBox($forum_lang['error'], $forum_lang['topic_basket'] . '.' . $forum_lang['no_topic_basket_edit']);
return;
}
if ($topic['close_topics'] == '1') {
// Тема закрыта
System::site()->AddTextBox($forum_lang['error'], $forum_lang['topic_close_for_discussion'] . '.' . $forum_lang['no_create_new_message_current_topic_add']);
return;
}
// Форум
$forum_id = SafeEnv($topic['forum_id'], 11, int);
if (!isset($forums_tree->IdCats[$forum_id])) {
System::site()->AddTextBox($forum_lang['error'], $forum_lang['error_data']);
return;
}
$forum_config = $forums_tree->GetForumConfigRecursive($forum_id);
if (!$forum_config['access']) {
// Доступ
System::site()->AddTextBox($forum_lang['error'], $forum_config['access_reason']);
return;
} elseif (!$forum_config['new_message_email']) {
// Разрешено ли подписываться на новые сообщения (+ защита от гостей)
System::site()->AddTextBox($forum_lang['error'], $forum_config['add_post_reason']);
return;
}
} else {
System::site()->AddTextBox($forum_lang['error'], $forum_lang['error_data']);
return;
}
Forum_Subscription($topic_id);
// Подписка (обратное действие, если пользователь уже подписан)
GO(Ufu('index.php?name=forum&op=showtopic&topic=' . $topic_id . '&view=lastpost', 'forum/topic{topic}-new.html'));
}
示例5: IndexFormsMain
function IndexFormsMain()
{
$forms = System::database()->Select('forms', GetWhereByAccess('view', "`active`='1'"));
if (System::database()->NumRows() == 0) {
GO(FORMS_UFU);
}
System::site()->AddTemplatedBox('', 'module/forms_list.html');
System::site()->AddBlock('forms_list', true, true, 'form');
foreach ($forms as $form) {
$vars = array();
$vars['link'] = Ufu('index.php?name=forms&formlink=' . SafeDB($form['link'], 255, str), 'forms:form');
$vars['title'] = SafeDB($form['hname'], 255, str);
System::site()->AddSubBlock('forms_list', true, $vars);
}
}
示例6: IndexForumCloseTopic
function IndexForumCloseTopic()
{
if (!System::user()->isAdmin()) {
HackOff();
return;
}
if (CheckGet('topic')) {
$topic_id = SafeEnv($_GET['topic'], 11, int);
} else {
System::site()->AddTextBox($forum_lang['error'], $forum_lang['error_data']);
return;
}
System::database()->Select('forum_topics', "`id`='{$topic_id}'");
$topic = System::database()->FetchRow();
$forum_id = SafeDB($topic['forum_id'], 11, int);
System::database()->Update('forum_topics', "`close_topics`='1'", "`id`='{$topic_id}'");
GO(Ufu('index.php?name=forum&op=showforum&forum=' . $forum_id, 'forum/{forum}/'));
}
示例7: IndexForumEditPosts
function IndexForumEditPosts()
{
global $forum_lang;
if (!System::user()->isAdmin()) {
System::site()->AddTextBox($forum_lang['forum'], '<p align="center">' . $forum_lang['error_no_right_edit'] . '.</p>');
return;
}
if (!isset($_POST['posts'])) {
System::site()->AddTextBox($forum_lang['forum'], '<p align="center">' . $forum_lang['error_no_messages'] . '</p><br><a href="javascript:history.go(-1)">' . System::site()->Button($forum_lang['back']) . '</a>');
return;
}
if (isset($_GET['ok']) && $_GET['ok'] == '1') {
$posts_ids = SafeEnv(explode(',', $_POST['posts']), 11, int);
$moderation_result = ForumModerationPosts($_GET['edit'], $posts_ids, true);
if ($moderation_result) {
if (isset($_GET['back'])) {
GoRefererUrl($_GET['back']);
} else {
GO($_POST['backurl']);
}
}
} else {
$posts_ids = array();
foreach (array_keys($_POST['posts']) as $post_id) {
$posts_ids[] = SafeEnv($post_id, 11, int);
}
$do = SafeDB($_POST['do'], 255, str);
$form_url = 'index.php?name=forum&op=edit_posts&edit=' . $do . '&ok=1';
if (isset($_GET['back'])) {
$form_url .= '&back=' . SafeDB($_GET['back'], 10, str);
}
$vars['lang_premoderation'] = $forum_lang['moderation_messages'];
$vars['posts_count'] = count($posts_ids);
$vars['form_action'] = $form_url;
$vars['form_name'] = 'forum_delete';
$vars['posts'] = implode(',', $posts_ids);
$vars['backurl'] = $_SERVER['HTTP_REFERER'];
$vars['reason'] = System::config('forum/basket') && $do == 'deleteposts';
$vars['lang_do'] = ForumModerationPosts($do, $posts_ids, false);
System::site()->AddTemplatedBox($vars['lang_do'], 'module/forum_moderation.html');
System::site()->AddBlock('forum_moderation', true, false, 'mod');
System::site()->SetVars('forum_moderation', $vars);
}
}
示例8: array
}
$text = "<div class=\"license_frame\"><div>" . $license . "</div></div>";
$this->SetContent($text);
$this->AddButton('Назад', 'main&p=2');
$this->AddButton('Принимаю', 'install&p=2');
break;
case 2:
// Выбор типа базы данных
global $db_types;
$db_types = array();
SetupPlugins('db_types');
$this->SetTitle("Выбор типа Базы данных.");
$this->OpenForm('install&p=3');
$text = '<p>Выберите тип Базы данных: </p>' . System::site()->Select('db_type', $db_types, true);
$this->SetContent($text);
$this->AddButton('Назад', 'install&p=1');
$this->AddSubmitButton('Далее');
break;
case 3:
// Перенаправление соответственно выбранному типу БД
if (!isset($_POST['db_type'])) {
$this->SetTitle('Ошибка');
$this->SetContent('Вы не выбрали тип Базы данных.');
$this->AddButton('Назад', 'install&p=2');
break;
}
$smod = SafeEnv($_POST['db_type'], 255, str);
System::user()->Session('db_type', $smod);
GO('setup.php?mod=' . $smod);
break;
}
示例9: IndexFeedBackSend
function IndexFeedBackSend()
{
$err = array();
if (!isset($_POST['name']) || !isset($_POST['email']) || !isset($_POST['subject']) || !isset($_POST['department']) || !isset($_POST['message']) || !isset($_POST['feedback_form'])) {
GO(Ufu('index.php'));
} else {
if ($_POST['name'] != '') {
$name = SafeDB($_POST['name'], 250, str);
} else {
$err[] = 'Пожалуйста, укажите Ваше имя!';
}
if ($_POST['email'] != '') {
$email = SafeDB($_POST['email'], 50, str);
} else {
$err[] = 'Пожалуйста, укажите Ваш действительный адрес E-mail!';
}
if ($_POST['subject'] != '') {
$subject = SafeDB($_POST['subject'], 250, str, false, false, false);
} else {
$err[] = 'Пожалуйста, введите тему сообщения!';
}
// Проверяем капчу
if (!System::user()->isDef('captcha_keystring') || System::user()->Get('captcha_keystring') != $_POST['keystr']) {
$err[] = 'Вы ошиблись при вводе кода с картинки.';
}
if ($_POST['department'] != '') {
$department = SafeEnv($_POST['department'], 11, int);
System::database()->Select('feedback', "`active`='1' and `id`='{$department}'");
if (System::database()->NumRows() > 0) {
$dep = System::database()->FetchRow();
$dep_email = SafeDB($dep['email'], 255, str);
$department = SafeDB($dep['name'], 255, str);
} else {
$err[] = 'Департамент больше не существует или обратная связь с этим департаментом отключена.';
}
} else {
$err[] = 'Пожалуйста, выберите департамент!';
}
if ($_POST['message'] != '') {
$message = SafeDB($_POST['message'], 65535, str, false, false, false);
} else {
$err[] = 'Пожалуйста, введите сообщение!';
}
}
$size = $_FILES['attach']['size'];
// / 1024;
if ($_FILES['attach']['error'] == UPLOAD_ERR_OK && $size >= System::config('feedback/max_filesize')) {
$err[] = 'Слишком большой размер файла.';
}
if (count($err) == 0) {
$mail = LmEmailExtended::Instance();
$mail->SetTo($dep_email, Cp1251ToUtf8($department));
$mail->SetFrom($email, Cp1251ToUtf8($name));
$mail->SetSubject(Cp1251ToUtf8($subject));
$text = Indent("\n\t\t\tЗдравствуйте!\n\n\t\t\tС помощью формы обратной связи на сайте \"" . System::config('general/site_name') . "\"\n\t\t\tвам было отправлено сообщение.\n\n\t\t\tДепартамент: {$department}\n\t\t\tИмя: {$name}\n\t\t\tE-mail: {$email}\n\t\t\tТема сообщения: {$subject}\n\t\t\tДата отправки: " . TimeRender(time(), true, false) . "\n\t\t\tСообщение: {$message}\n\t\t");
$mail->AddTextPart(Cp1251ToUtf8($text));
if ($_FILES['attach']['error'] == UPLOAD_ERR_OK) {
$mail->AddAttachmentPart(file_get_contents($_FILES['attach']['tmp_name']), $_FILES['attach']['name']);
}
if ($mail->Send()) {
System::site()->AddTextBox('Обратная связь', '<div style="text-align: center;">Ваше сообщение успешно отправлено!</div>');
} else {
System::site()->AddTextBox('Обратная связь', '<div style="text-align: center;">При отправке вашего сообщения произошла ошибка, повторите попытку или обратитесь к администратору.</div>');
}
} else {
$text = 'Сообщение не отправлено:<br /><ul>';
foreach ($err as $error) {
$text .= '<li>' . $error . '</li>';
}
$text .= '</ul>';
System::site()->AddTextBox('Ошибка', $text);
IndexFeedBackForm();
}
}
示例10: header
<?php
/*
* LinkorCMS 1.4
* © 2012 LinkorCMS Development Group
*/
if (!defined('VALID_RUN')) {
header("HTTP/1.1 404 Not Found");
exit;
}
if (isset($_POST['newname'])) {
System::database()->RenameTable(SafeEnv($_GET['name'], 255, str), SafeEnv($_POST['newname'], 255, str));
Audit('Управление БД: Переименование таблицы "' . $_GET['name'] . '" в "' . $_POST['newname'] . '"');
GO(ADMIN_FILE . '?exe=dbadmin');
} else {
AddCenterBox('Переименовать таблицу "' . SafeDB($_GET['name'], 255, str) . '"');
FormRow('Новое имя', $site->Edit('newname', SafeDB($_GET['name'], 255, str), false, 'style="width: 210px;" class="autofocus"'));
AddForm('<form action="' . ADMIN_FILE . '?exe=dbadmin&a=renametable&name=' . SafeEnv($_GET['name'], 255, str) . '" method="post">', $site->Button('Отмена', 'onclick="history.go(-1);"') . $site->Submit('Переименовать'));
}
示例11: AdminsDeleteGroup
function AdminsDeleteGroup()
{
if (!isset($_GET['id'])) {
GO(ADMIN_FILE . '?exe=admins&a=groups');
exit;
}
$id = SafeEnv($_GET['id'], 11, int);
if (isset($_GET['ok']) && SafeEnv($_GET['ok'], 1, int) == '1') {
// Очищаем кэш
if (System::cache()->HasCache(system_cache, 'usertypes')) {
System::cache()->Delete(system_cache, 'usertypes');
}
System::database()->Select('users', "`access`='" . $id . "'");
$num_users = System::database()->NumRows();
System::database()->Select('usertypes', "`id`='{$id}'");
$group = System::database()->FetchRow();
if ($num_users > 0) {
if (!isset($_GET['users'])) {
$text = 'К этой группе принадлежат ' . $num_users . ' пользователей. Вы можете:<br />' . '<a href="' . ADMIN_FILE . '?exe=admins&a=delgroup&id=' . $id . '&ok=1&users=del">Удалить их...</a> <br />' . '<a href="' . ADMIN_FILE . '?exe=admins&a=delgroup&id=' . SafeEnv($_GET['id'], 11, int) . '&ok=1&users=move">Переместить их в другую группу.</a>';
AddTextBox('Внимание!', $text);
} else {
if ($_GET['users'] == 'del') {
System::database()->Delete('users', "`access`='" . $id . "'");
} elseif ($_GET['users'] == 'move' && !isset($_POST['to'])) {
$text = 'Выберите группу, в которую Вы желаете переместить пользователей:<br />' . '<form action="' . ADMIN_FILE . '?exe=admins&a=delgroup&id=' . $id . '&ok=1&users=move" method="post">';
System::database()->Select('usertypes', "`id`<>'" . $id . "'");
System::site()->DataAdd($group_data, '-1', 'Пользователи');
while ($tp = System::database()->FetchRow()) {
System::site()->DataAdd($group_data, $tp['id'], $tp['name']);
}
$text .= System::site()->Select('to', $group_data) . '<br />';
$text .= System::site()->Submit('Продолжить') . '<br />';
$text .= '</form>';
AddTextBox('Внимание!', $text);
return;
} elseif ($_GET['users'] == 'move' && isset($_POST['to'])) {
$to = SafeEnv($_POST['to'], 11, int);
if ($to == '-1') {
$set = "type='2',access='" . $to . "'";
} else {
$set = "access='" . $to . "'";
}
System::database()->Update('users', $set, "`access`='" . $id . "'");
}
}
}
System::database()->Delete('usertypes', "`id`='" . $id . "'");
Audit('Администраторы: Удаление группы администраторов "' . $group['name'] . '"');
GO(ADMIN_FILE . '?exe=admins&a=groups');
} else {
System::database()->Select('usertypes', "`id`='" . $id . "'");
$group = System::database()->FetchRow();
$text = 'Вы действительно хотите удалить группу "' . SafeDB($group['name'], 255, str) . '"?<br />' . '<a href="' . ADMIN_FILE . '?exe=admins&a=delgroup&id=' . $id . '&ok=1">Да</a> <a href="javascript:history.go(-1)">Нет</a>';
AddTextBox("Предупреждение", $text);
}
}
示例12: elseif
} elseif (!CheckEmail($admin_email)) {
$errors[] = 'Формат E-mail не правильный. Он должен быть вида: <b>domain@host.ru</b> .';
}
if (count($errors) > 0) {
$this->SetTitle("Создание учетной записи Главного администратора");
$text = 'Ошибки:<br /><ul>';
foreach ($errors as $error) {
$text .= '<li>' . $error;
}
$text .= '</ul>';
$this->SetContent($text);
$this->AddButton('Назад', 'admin&p=1');
} else {
// Изменяем главного администратора
$login = SafeEnv($admin_login, 255, str);
$pass2 = md5($admin_pass);
$email = SafeEnv($admin_email, 255, str);
System::database()->Update('users', "`login`='{$login}',`pass`='{$pass2}',`email`='{$email}'", "`id`='1'");
// Автоматически определяем и устанавливаем URL сайта в настройках.
ConfigSetValue('general', 'site_url', GetSiteUrl());
// Устанавливаем Email сайта - такой-же как и у администратора
ConfigSetValue('general', 'site_email', $email);
// Изменяем email Департамента обратной связи
System::database()->Update('feedback', "`email`='{$email}'", "`id`='1'");
// Создаём бекап базы данных
$backupfilename = System::config('backup_dir') . date("Y.m.d_H.i.s_") . GenRandomString(8, 'abcdefghijklmnopqrstuvwxyz0123456789') . '.' . System::database()->Name . '.zip';
System::database()->CreateBackupFile($backupfilename);
GO('setup.php?mod=finish');
}
break;
}
示例13: GoRefererUrl
/**
* Выполняет перенаправление по сохраненному в сессии адресу
* @param $id Идентификатор ссылки
* @param string $anchor Добавление якоря к ссылке. Пример: #post244. Так-же могут быть просто дополнительные параметры.
* @param bool $unset_url Удалить сохраненный URL из сессии
* @return bool
*/
function GoRefererUrl($id, $anchor = '', $unset_url = true)
{
if (isset($_SESSION['saved_urls'][$id])) {
$url = $_SESSION['saved_urls'][$id];
if ($unset_url) {
unset($_SESSION['saved_urls'][$id]);
}
return GO($url . $anchor);
} else {
return GO(HistoryGetUrl(2));
}
}
示例14: AdminConfigGroupDelete
function AdminConfigGroupDelete()
{
$back_url = '';
if (!AdminConfigPlugins()) {
$back_url = ADMIN_FILE . '?exe=config_admin&a=view_groups&delok';
} else {
$back_url = ADMIN_FILE . '?exe=config_admin&a=view_groups_plugins&plugins=1&delok';
}
if (!isset($_GET['id'])) {
GO($back_url);
} else {
$id = SafeEnv($_GET['id'], 11, int);
}
if (isset($_GET['ok']) && $_GET['ok'] == '1' || IsAjax()) {
System::database()->Select(AdminConfigGroupTable(), "`id`='{$id}'");
$conf = System::database()->FetchRow();
System::database()->Delete(AdminConfigGroupTable(), "`id`='{$id}'");
System::database()->Delete(AdminConfigConfigTable(), "`group_id`='{$id}'");
Audit('Управление настройками: Удаление группы настроек "' . $conf['hname'] . '(' . $conf['name'] . ')" в "' . AdminConfigGroupTable() . '"');
GO($back_url);
} else {
$r = System::database()->Select(AdminConfigGroupTable(), "`id`='{$id}'");
AddCenterBox('Удаление группы навтроек');
System::admin()->HighlightConfirm('Это может повлиять на работу системы. Нажмите отмена, если не уверены. Удалить группу настроек "' . SafeDB($r[0]['hname'], 255, str) . '"?', ADMIN_FILE . '?exe=config_admin&a=delete&id=' . $id . '&ok=1' . (AdminConfigPlugins() ? '&plugins=1' : ''));
}
}
示例15: SafeEnv
exit;
}
$table = SafeEnv($_GET['name'], 255, str);
$index = SafeEnv($_GET['index'], 255, int);
$where = '';
$where_url = '';
if (isset($_GET['where'])) {
$where = $_GET['where'];
$where_url = '&where=' . $_GET['where'];
}
$rows = System::database()->Select($table, $where);
$row = $rows[$index];
$columns = System::database()->GetTableColumns($table);
$names = array();
foreach ($columns as $col) {
$names[$col['name']] = $row[$col['name']];
}
$sql = '';
foreach ($row as $key => $value) {
if (isset($names[$key])) {
$sql .= "`" . $key . "`='" . System::database()->EscapeString($value) . "' and ";
}
}
$sql = substr($sql, 0, strlen($sql) - 4);
System::database()->Delete($table, $sql);
Audit('Управление БД: Удаление строки из таблицы "' . $table . '"');
if (isset($_REQUEST['back'])) {
GoRefererUrl($_REQUEST['back']);
} else {
GO(ADMIN_FILE . '?exe=dbadmin&a=review&name=' . SafeDB($_GET['name'], 255, str) . $where_url);
}