Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Автоматический переход на страницу, как лучше его реализовать? 
:(
    Опции темы
szz
Дата 25.7.2006, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Проспись, monsir!   smile  smile  smile   Завтра продолжим 

Это сообщение отредактировал(а) szz - 25.7.2006, 22:34


--------------------
PM   Вверх
Vigoroso
Дата 25.7.2006, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.6.2006

Репутация: нет
Всего: нет



Код

require 'config.php';
    require 'functions.php';
    
    if (!isset($_POST['login_error'])) $_POST['login_error']="";
    
    $login = p_POST('login');
    $pass = p_POST('pass');
    
    if (!empty($login) && !empty($password)){
        query = "    SELECT client_Status 
                    FROM Client 
                    WHERE client_Login='$login' AND client_Password='$pass'
                ";
        $result = mysql_query($query);
        $status = mysql_fetch_row($result);
        
        if (empty($status[0])){
            echo " There is no registered user as $login ";
        }
        else{
            switch ($status[0]){
                case 0: case 1:
                    session_start();
                    $_SESSION['login']=$login;
                    $_SESSION['status']=$status[0];
                    //echo " You are logged successfully as $login";
                break;
                case 2: $_POST['login_error']="You account $login is banned";
                break;
            }
        }
    }
    else{
        $_POST['login_error']="The login or password is incorrect";
    }
    
    header('Location: index.php');
    exit();

как бы все исправлено... но все равно скрипт не выболняет поставленной задачи 
p_POST это я не перепутал, как ты выразился - это обертка для $_POST 

Это сообщение отредактировал(а) Vigoroso - 25.7.2006, 23:07
PM MAIL   Вверх
S.A.P.
Дата 25.7.2006, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 3
Всего: 71



Vigoroso, убери пока редирект и смотри какие ошибки валятся. С ходу уже вижу, что переменная query записана без доллара. 
PM MAIL   Вверх
szz
Дата 26.7.2006, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



  Например вот так попробуй:

Код

       ...
        if (empty($status[0])){
            $the_message =  " There is no registered user as $login ";
        }
        else{
            switch ($status[0]){
                case 0: case 1:
                    session_start();
                    $_SESSION['login']=$login;
                    $_SESSION['status']=$status[0];
                    $the_message = " You are logged successfully as $login";
                break;
                case 2: $the_message = "You account $login is banned";
                break;
            }
        }
    }
    else{
        $the_message = "The login or password is incorrect";
    }
    
    header('Location: index.php?login_error='.urlencode($the_message));


   Что-то в этом роде. 


--------------------
PM   Вверх
jzZ
Дата 26.7.2006, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 17.7.2006

Репутация: 1
Всего: 2



Скрипту отправляются пост данные, значит заголовки уже отправлены, следовательно никаких header()... smile 
Значит можно так:
Код

echo "<script language='JavaScript'> document.location.href = 'http://forum.vingrad.ru/index.php?showtopic=105451&st=15';</script>";

 
PM MAIL   Вверх
szz
Дата 26.7.2006, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Цитата
Скрипту отправляются пост данные, значит заголовки уже отправлены, следовательно никаких header()...


  С каких это пор хедеры нельзя выводить из-за пост данных?
    Насколько я знаю - главное в output ничего не вывести перед хедерами. А пост-данные вполне можно отправлять - сколько раз я такое делал - получал пост данные, обрабатывал их и затем хедером редиректил! 


--------------------
PM   Вверх
jzZ
Дата 26.7.2006, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 17.7.2006

Репутация: 1
Всего: 2



szz
Ах да ссорри обшибся, я в сценарии накосячил с хтмл )

Добавлено @ 12:28 
не судите строго тока учусь ) 
PM MAIL   Вверх
Vigoroso
Дата 26.7.2006, 12:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.6.2006

Репутация: нет
Всего: нет



Ты предлагаешь передать сообщение об ошибке через Get... а через POST никак не получится?...
твой варинт сработал, просот я не хочу чтобы пользователь в адресной строке видел какие-либо переменные. 
мой прежний вариент с постом не работает... =\ 

Это сообщение отредактировал(а) Vigoroso - 26.7.2006, 12:30
PM MAIL   Вверх
szz
Дата 26.7.2006, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Что-что-что?! У тебя работает если передавалось через гет?!
Закомменть хедер, посмотри, выпадают ли ошибки!

Добавлено @ 12:58 
Нельзя передавать логин и ПАРОЛЬ через гет, что за бред?!  


--------------------
PM   Вверх
Vigoroso
Дата 26.7.2006, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.6.2006

Репутация: нет
Всего: нет



Кажись не правильно работает запрос 
-----------------
я не передаю пароль и логин через гет, это все через пост, ты мне предложил сообщение об ошибке, если таковая имеется передавать через гет, я вообще не люблю гет... стоит им пользоваться только в крайних случаях

Добавлено @ 13:18 
по идее он как минимум должен был мне вывести "Array", но в ответ тишина
Код

$status = mysql_fetch_array($result,MYSQL_ASSOC);
echo $status;
 

Это сообщение отредактировал(а) Vigoroso - 26.7.2006, 13:07
PM MAIL   Вверх
szz
Дата 26.7.2006, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Цитата
гет... стоит им пользоваться только в крайних случаях

   Нет, бывают случаи, когда он нужен - например для того, чтоб ссылку сделать. Представь себе в этом форуме все эти переменные, которые через гет - передавались бы через пост - тогда бы я не мог никому кинуть ссылку на конкретный топик.

  А редирект через хедер придется через гет пускать, другого способа я не знаю. Ну разве что следать скрытую форму и жаваскриптом засубмитить, например так:
вместо header('Location: index.php?login_error='.urlencode($the_message));
Код

echo "
<form action=index.php method=post name=submitbypost>
<input type=hidden name=login_error value='".htmlspecialchars($the_message)."'>
</form>
<script>document.submitbypost.submit()</script>
";


  Но это все таки извращение какое-то получается. Впрочем, дело вкуса - если уж настолько не любишь гет...  smile

Добавлено @ 13:26 
Цитата

echo $status;

  вообще чтоб дебагить используй 
Код

echo '<pre>';ver_dump(status);echo '</pre>';

   Так ты точно увидишь что там в переменной, даже если тишина - то и ее увидишь smile

Цитата
должен был мне вывести "Array"

   Ну почему же, если ничего не выбралось, то и ничего и не вернулось 


--------------------
PM   Вверх
Vigoroso
Дата 26.7.2006, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.6.2006

Репутация: нет
Всего: нет



Всем спасибо за помощь, во всем разобрался 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0513 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.