Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 3
Регистрация: 21.03.2016
Сообщений: 397
1

Как перенаправить

08.09.2016, 17:42. Показов 1129. Ответов 7
Метки нет (Все метки)

Добрый день!
пытаюсь написать админку.
Написал код авторизации и если пользователь авторизировался я его заношу в сессию и перенаправляю на страницу админки, а на странице админки я установил сессию если она определяется, то вывожу страницу, если нет, то отправляю его в окно авторизизации. Но вот как поставил проверку эту (с сессией) у меня он перестал перенаправлять.
Помигите исправить, пожалуйста!!
тут я проверяю введенный логин и пароль и открываю сессию
PHP
1
2
3
4
5
6
7
8
9
10
11
$result = mysql_query("SELECT * FROM reg_admin WHERE login = '$login' AND pass = '$pass'",$link);
if(mysql_num_rows($result) > 0) 
    {
        $row = mysql_fetch_array($result);
        $_SESSION['auth_admin'] = 'yes_auth';
        
    echo '<script type="text/javascript">
window.location = "index.php"
</script>';
 
    }
суда перенаправляется

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
session_start(); 
 
if ($_SESSION['auth_admin'] == 'yes_auth')
{
    
  define('яяяяp', true);
  
  if(isset($_GET["logout"]))
  {
      unset($_SESSION["auth_admin"]);
      echo '<script type="text/javascript">
    window.location = "login.php"
    </script>';
  }
  
  $_SESSION['urlpage'] = "<a href='index.php'>Главная</a>";
  include ("include/db_connect.php");
  ?>
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Панель управления - Вход</title>
    
    <script type="text/javascript" src="js/jquery-1.12.2.min.js"></script>
    <script type="text/javascript" src="js/shop-script.js"></script>
    <script type="text/javascript" src="js/wow.min.js"></script>    
    <link href="css/reset.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" href="css/style.css">    
  </head>
  <body> 
  <div id="block-body">
  <?php
  include ("include/block-header.php");  
  ?>
 <div id="block-content">
 <div id="block-parametrs">
 <p id="title-page">Общая статистика</p>
 </div>
 
 </div>
  
  
</div>
  </body>
</html>
<?php
}else 
{
    echo '<script type="text/javascript">
    window.location = "login.php"
    </script>';
}
?>
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.09.2016, 17:42
Ответы с готовыми решениями:

Как перенаправить страницу ?
Как перенаправить страницу ? Использую денвер . Пытался так в add.php есть код &lt;?php $name =...

Как перенаправить вывод?
Есть веб-сервис, который получает запрос, обрабатывает его и 'выплевывает' результат в виде...

Как перенаправить данные через POST?
Добрый день, возник очень простой вопрос, который создал некоторые трудности. Есть форма: echo...

Можно ли временно перенаправить echo?
Есть php-файл, в нём функция, использующая оператор echo. Можно ли в другом php-файле временно...

7
Фрилансер
Эксперт JSЭксперт HTML/CSSЭксперт PHP
1842 / 1339 / 598
Регистрация: 12.01.2011
Сообщений: 5,410
08.09.2016, 17:59 2
Лучший ответ Сообщение было отмечено Евгений 86 как решение

Решение

Не совсем понятна проблема.
Что перестало перенаправлять ?
0
1 / 1 / 3
Регистрация: 21.03.2016
Сообщений: 397
08.09.2016, 21:32  [ТС] 3
когда я авторизуюсь в файле login.php, нажимаю кнопку войти я должен переходить в файл index.php, но переход не происходит.
видимо из за проверки которую я поставил, проверяется сессия авторизированный пользователь или нет
PHP
1
if ($_SESSION['auth_admin'] == 'yes_auth')
или может я не правильно это оформил, не пойму
потому что я открываю скобки и закрывающие у меня в самом низу после тегa </html>

Добавлено через 14 минут
Решилась проблема, сам не понял как)

Добавлено через 1 час 57 минут
я прошу прощения
проблема осталась
не могу понять из за чего не срабатывает переход
0
260 / 208 / 99
Регистрация: 13.12.2015
Сообщений: 1,098
09.09.2016, 00:10 4
Цитата Сообщение от Евгений 86 Посмотреть сообщение
тут я проверяю введенный логин и пароль и открываю сессию
а где session_start()?
Цитата Сообщение от Евгений 86 Посмотреть сообщение
echo '<script type="text/javascript">
window.location = "index.php"
</script>';
перенаправить лучше так
PHP
1
header("Location: http://www.example.com/");

Цитата Сообщение от Евгений 86 Посмотреть сообщение
<body>
* <div id="block-body">
* <?php
* include ("include/block-header.php"); *
* ?>

что за block-header.php?
0
Фрилансер
Эксперт JSЭксперт HTML/CSSЭксперт PHP
1842 / 1339 / 598
Регистрация: 12.01.2011
Сообщений: 5,410
09.09.2016, 00:13 5
Цитата Сообщение от SergioO Посмотреть сообщение
перенаправить лучше так
PHP
1
header("Location: http://www.example.com/");

Не по теме:

Почему лучше так?

0
260 / 208 / 99
Регистрация: 13.12.2015
Сообщений: 1,098
09.09.2016, 01:02 6
Евгений 86, я б чего такое замутил бы
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
session_start();
if(!isset($_SESSION['auth']))$_SESSION['auth']=0;
if($_SESSION['auth']>=4) header("HTTP/1.0 401 Unauthorized");
 
if (  isset($_GET['login']) &&  isset($_GET['pass'])  )
{ $mysqli = @new mysqli($host,$user,$pass,$db_name);
 
    if ($mysqli->connect_error) {
        die('Connect Error: ' . $mysqli->connect_error);
    }
 
$query = "SELECT `password` FROM `reg_admin` WHERE login = {$login}";
$result = @$mysqli->query($query);
if ({$mysqli->error}) die ("Error query : {$mysqli->errno} ({$mysqli->error})");
if (  password_verify($result, password_hash($_GET[pass],PASSWORD_BCRYPT))  ) {
session_regenerate_id(true);
$_SESSION[auth]=5;
$host  = $_SERVER['HTTP_HOST'];
$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'index.php';
header("Location: http://$host$uri/$extra");
} else {
$_SESSION['auth']++;
}
index.php
PHP
1
if($_SESSION['auth']===5)...

Цитата Сообщение от Azdeman Посмотреть сообщение
Почему лучше так?
давайте сравним:
получает браузер заголовок и редиректится, а в случае
Цитата Сообщение от SergioO Посмотреть сообщение
echo '<script type="text/javascript">
window.location = "index.php"
</script>';
браузер получает скрипт в воздухе, выполняет скрипт, редиретится, а выполняет скрипт - это создает лексикал енвайромент и тд
редирект, конечно, с учетом
PHP
1
2
3
4
$host  = $_SERVER['HTTP_HOST'];
$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'index.php';
header("Location: http://$host$uri/$extra");
0
Web Programmer
325 / 286 / 121
Регистрация: 28.09.2011
Сообщений: 1,570
09.09.2016, 01:51 7
Azdeman, Хотябы потому что, писать html а еще и js в php все в кашу плохо,
а еще хуже если можно обойтись без этих я бы сказал костылей, когда header работает не плохо,
а точнее и существует для таких задач.
0
1 / 1 / 3
Регистрация: 21.03.2016
Сообщений: 397
10.09.2016, 20:48  [ТС] 8
я этот вопрос всетаки решил сам.
Но хочу сказать по поводу редиректа. Когда я делал его с помощью header("Location: http:....); то у меня все работало но только на локальном хосте, как только сайт перенес на хостинг у меня все редиректы перестали работать. Я вывел ошибки на экран и у меня как раз было предупреждения на счет header и я его заменил на
PHP
1
2
3
echo '<script type="text/javascript">
window.location = "index.php"
</script>';
и тогда все стало работать нормально!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.09.2016, 20:48
Помогаю со студенческими работами здесь

Перенаправить пользователя на главную страницу
Здравствуйте,у меня такой банальный вопрос,как можно перенаправить пользователя на указаную...

Перенаправить поискового бота на другую страницу
Options +FollowSymLinks RedirectMatch 301 ^/cat2/ http://www.site.ru/cat1/cat2/ Проблема вся...

Перенаправить веб-страницу своего сайта в зависимости от языка
У меня есть сайт, он переведен на 2 языка - русский и английский (www.site.com/en и...

Перенаправить все запросы с поддоменов на index.php с get-параметром
Здравствуйте, заранее извиняюсь за возможно некорректный заголовок, постараюсь объяснить. Все...

Можно ли перенаправить пользователя на указанную страницу не используя заголовки?
Подскажите плз, уже все облазил, но так и не понял: можно ли перенаправить пользователя на...

Подставить значение и перенаправить запрос (Post-Method) вместо кнопки формы
Уважаемые коллеги. Прошу помощи: Есть рабочий исх. код: &lt;html&gt; &lt;head&gt; &lt;title&gt;Перевірка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru