@olezko

Как сделать редирект после успешной авторизации DLE ?

На DLE сайте потребовалось вывести форму авторизации на отдельную страницу. Вывел, все отлично работает. Если авторизация прошла не успешно то, вылезает ошибка. Но с успешной авторизацией беда. Вход происходит, но перехода на главную нету. Не могу понять причину.
Сама форма
///////////////
<input name="login_name" id="login_name"value="" tabindex="1" placeholder="Login" type="text" autofocus autocomplete="off" data-required="true" style="background: white;border: 0px;padding: 12px;padding-left: 30px;margin: 0;line-height: 24px;height: 44px; width:300;color: #8e9ba9;font-size: 14px;font-family: "PT Sans", sans-serif; -webkit-border-radius: 4px;-moz-border-radius: 4px;border-radius: 4px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; width: 100%;" />
			</div>
	</div>		
    <br>
    <div class="s-field " >
			<div style="position: relative">
<input  type="password" name="login_password" id="login_password" value="" tabindex="1" placeholder="Password" autofocus autocomplete="off" data-required="true" style="background: white;border: 0px;padding: 12px;padding-left: 30px;margin: 0;line-height: 24px;height: 44px; width:300;color: #8e9ba9;font-size: 14px;font-family: "PT Sans", sans-serif; -webkit-border-radius: 4px;-moz-border-radius: 4px;border-radius: 4px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; width: 100%;" />
			</div>
	</div>

    
   
    
    <br>
<div style="width:300px;margin-left: 0px;margin-right: 0px;">
<div class="section no_padding transparent">

<button name="login" type="hidden" id="login" value="submit" style="width:300px" class="button block big">Войти</button>


<?php

	if( ! defined( 'DATALIFEENGINE' ) ) {
		die( "Hacking attempt!" );
	}
	if( $is_logged ) {
		header( "Location: {$_SERVER['PHP_SELF']}" );
	} else {
		$tpl->load_template( 'login_page.tpl' );
		$tpl->set( '{registration-link}', $PHP_SELF . "?do=register" );
		$tpl->set( '{lostpassword-link}', $PHP_SELF . "?do=lostpassword" );
		$tpl->set( '{login-method}', $config['auth_metod'] ? "E-Mail:" : $lang['login_metod'] );
		$tpl->copy_template = "<form  method=\"post\" action=\"\">\n" . $tpl->copy_template . "
<input name=\"login\" type=\"hidden\" id=\"login\" value=\"submit\" >
</form>";
		$tpl->compile( 'content' );
		$tpl->clear();
	};

?>
  • Вопрос задан
  • 3876 просмотров
Решения вопроса 1
Dimitriys
@Dimitriys
не знаток DLE, поэтому могу посоветовать только прямое решение
вместо
header( "Location: {$_SERVER['PHP_SELF']}" );
указать
header( "Location: /" );
exit();

или хотя бы просто
header( "Location: $_SERVER['PHP_SELF']" );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы