Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / header не перенаправляет а открывает код страницы. / 12 сообщений из 12, страница 1 из 1
09.12.2014, 15:12
    #38829075
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
Приветствую!
После выполнения условия не происходит перенаправление на другую страницу, а открывает ее код в виде html
Код: 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.
<?php ob_start();?>
<?php
// Соединиться с сервером БД
    mysql_connect("localhost", "123", "123") or die (mysql_error ());

    // Выбрать БД
    mysql_select_db("123") or die(mysql_error());

    $login1 = $_POST['login'];
    mysql_query("SET NAMES utf8");
    $log1 = "SELECT d FROM proverka WHERE d = '{$login1}' LIMIT 1";
    $log_sql = mysql_query($log1) or die(mysql_error());
    
    if(mysql_num_rows($log_sql) > 0)
    {
      

     header("Location: http://ya.ru");
       exit;
    }

    else
    {
        echo "error";
    }

    ?>
<? ob_flush(); ?>




старт начинается от сюда:
Код: html
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.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Тест</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<input type="text" name="login" />
<input type="button" id="check" style="background:#FFFFFF; border:1px solid; margin-left:5px;" value="Проверить" />
<span style="display:none;" id="info"></span>
 
<script>
    $("#check").click
    (
        function()
        {
            $("#info").text("Подождите...");
            $("#info").fadeIn();
            
            // Логин, который отправляем php-скрипту
            var login = $("[name=login]").val();
            
            // Тут посылаем Ajax-запроса
            $.post( "test.php", {login: login}, function( data ){ $("#info").text(data) } );
        }
    );
</script>
 
</body>
</html>
...
Рейтинг: 0 / 0
09.12.2014, 15:41
    #38829119
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
mishanya3624, как второй кусок кода связан с первым? Или первый со вторым...
...
Рейтинг: 0 / 0
09.12.2014, 15:45
    #38829122
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
открывается сначала страница со вторым куском, который связан с первым ajax запросом
Код: html
1.
2.
// Тут посылаем Ajax-запроса
            $.post( "test.php", {login: login}, function( data ){ $("#info").text(data) } );




test.php это и есть файл с первым куском кода
...
Рейтинг: 0 / 0
09.12.2014, 15:47
    #38829126
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
Суть вот в чем, есть поле ввода в которое вводят те или иные данные и эти данные должны свериться с данными базы данных, если такие данные есть, то должен перенаправить на другую страницу, иначе , ошибка.
Сама структура и код рабочий, все обрабатывается как надо, но не происходит перенаправления.
...
Рейтинг: 0 / 0
09.12.2014, 16:22
    #38829198
JeStone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
mishanya3624Приветствую!
После выполнения условия не происходит перенаправление на другую страницу, а открывает ее код в виде html

А почему вы решили, что вас должно перенаправить на другую страницу? Перенаправляет не вас, а ваш ajax-запрос. А выхлоп после перенаправления вы сами пишите как обычный текст (т.е. с заменой всех html-тэгов) в элемент c id=info вот тут $("#info").text(data)
...
Рейтинг: 0 / 0
09.12.2014, 16:50
    #38829246
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
Хорошо, а как мне тогда сделать, чтобы при положительном сопоставлении он уходил на другую страницу, а при отрицательном выводил просто текстовую ошибку?
...
Рейтинг: 0 / 0
09.12.2014, 17:18
    #38829284
kunaksergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
mishanya3624,
перенаправление следует сделать в файле с java скриптом, после проверки на какой-нибудь флаг. Если говорить об авторизации, может следует воспользоваться куками?
...
Рейтинг: 0 / 0
09.12.2014, 17:20
    #38829288
JeStone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
mishanya3624,
как вариант:
Код: javascript
1.
2.
3.
4.
5.
6.
$.post( "test.php", {login: login}, function( data ){ 
if (data == "success") 
    location.href = "http://ya.ru"; 
else  
    $("#info").text(data);
} );
...
Рейтинг: 0 / 0
09.12.2014, 17:49
    #38829358
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
JeStone,

JeStonemishanya3624,
как вариант:
Код: javascript
1.
2.
3.
4.
5.
6.
$.post( "test.php", {login: login}, function( data ){ 
if (data == "success") 
    location.href = "http://ya.ru"; 
else  
    $("#info").text(data);
} );



Спасибо большое, только небольшая поправка

Код: javascript
1.
if (data > 0) 
...
Рейтинг: 0 / 0
10.12.2014, 15:19
    #38830282
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
mishanya3624JeStone,

JeStonemishanya3624,
как вариант:
Код: javascript
1.
2.
3.
4.
5.
6.
$.post( "test.php", {login: login}, function( data ){ 
if (data == "success") 
    location.href = "http://ya.ru"; 
else  
    $("#info").text(data);
} );



Спасибо большое, только небольшая поправка

Код: javascript
1.
if (data > 0) 



вообще лучше делайте сразу правильно.

1)читаем внимательно про джейквери аджакс
вы же продвинутый :) не то что другие по запощеному вопросу видно что у человека ветер в голове.

2)особое внимание на
Код: javascript
1.
2.
3.
4.
5.
6.
7.
$.ajax({
  statusCode:{
    404:function(){
      alert('Страница не найдена');
    }
  }
});



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

можно долепить блокировку от большого числа попыток неверного логина - тут статус однозначно 429 - слишком много запросов.

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

в любом из этих случаев, помимо статуса, можете передавать джейсоном масив данных.

для примера.

в ответ заложить такую логику.
если в ответе есть поле
msg- вывести его на зелёном фоне
info на жолтом
error на красном
url - перейти по ссылке через сразу если нет информации, с задержкой если информация есть
alert - текст который выдать человеку всплывающим окном(чтоб точно заметил)
.... и ещо лепите что хотите.

а то отвечать текстом или не отвечать...слижком узко.

возьмите за основу.
на сервере - логин прошол ответ статус 201 msg = вы авторизаваны, сейчас произойдёт переход на страницу...

плохой логин пароль - ответ 400 info - не выерные данные авторизации, проверте ...

много попыток - 429 error - у вас лимит попыток. ждите х часов.

на клиенте, обработка вариантов ответа, и соответсвенно три функции
showmsg showinfo show error -которые в нужное место вставляют переданый текст ...

плюс функция редиректа
пример для джейквери
Код: javascript
1.
2.
3.
4.
5.
6.
7.
var myTimer = {};
  // delay 2 seconds
  myTimer = $.timer(2000, function() {

  //redirect to home page
  window.location = "/RedirectTimer/Home.aspx";
});
...
Рейтинг: 0 / 0
11.12.2014, 10:00
    #38830971
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
Спасибо за расширенные рекомендации!
...
Рейтинг: 0 / 0
12.12.2014, 17:07
    #38832792
mishanya3624
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
header не перенаправляет а открывает код страницы.
Опять попал в тупик...сейчас код отрабатывается, переадресация происходит, я не много усовершенствовал и сделал следующее:
Код: html
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.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Тест</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
    <!-- Optional theme -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
    <!-- Latest compiled and minified JavaScript -->
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>

</head>
<body>

<div style="background: url(../images/key2.jpg) no-repeat; height:1000px; text-align: center; background-position:center;background-size: 100%;">
<div class="row">
<div class="col-xs-6 col-md-4"></div>
 <div class="col-xs-6 col-md-4">

   <div  class="modal-content" style="top:200px;width:290px; height:400px; border-radius:5px; background-position:center;background-color: #E7E7E7;text-align: center;margin:0 auto;background-color: rgba(226, 228, 229, 0.7);">
   <h4>Предварительная запись</h4>
   <p>на выдачу ключей</p>
  
   <input style="margin-top:110px;  width:200px; margin-left:44px;" type="text" class="form-control" id="inputSuccess1" name="login"  placeholder="Введите номер договора"/>
   <input style="margin-top:120px;" type="button" class="btn btn-success" id="check"  value="Проверить" />
   <a href="http://expert-exp.ru/"><input style="margin-top:120px;background-image: linear-gradient(to bottom,#BD0D0D ,#D51414 100%);background-color: #CB111D;" type="button" class="btn btn-success" id="check"  value="Назад на сайт" /></a>
   <br><span style="display:none;" id="info"></span></br>

   </div>
 </div>
<div class="col-xs-6 col-md-4"></div>
</div>
</div>


</div>
<script>
    $("#check").click
    (
        function()
        {
            $("#info").text("Подождите...");
            $("#info").fadeIn();
            
            // Логин, который отправляем php-скрипту
            var login = $("[name=login]").val();
            
            // Тут посылаем Ajax-запроса
             $.post( "test.php", {login: login}, function( data ){ 
                if (data > 0) 

                   $.ajax({  
                    
                    url: "http://wwwwww.ru",  
                    cache: false,  
                    success: function(html){  
                        $(".modal-content").html(html).animate({width:'350px', height:'300px'}, 500);  
                    }  
                });  
                
                 else  
                 $("#info").text(data)
                 } );
        }
    );
</script>
 

   
</body>
</html>


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

Теперь загвоздка как сделать следующий переход на следующую страницу уже с этой,

Код: html
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.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title></title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
    <!-- Optional theme -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
    <!-- Latest compiled and minified JavaScript -->
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
   
</head>
<body>

<div><a href="http://expert-exp.ru/bd2/form.html"> <input style="margin-top:10px;background-image: linear-gradient(to bottom,#5cb85c 0,#419641 100%);" type="button" class="btn btn-success" id="check"  value="Назад " /></a></div>
<div id="page02" style="margin-top:40px">
<h6>Выберите необходимый корпус</h6>


<?php
(defined('_VALID_MOS') OR defined('_JEXEC')) or die('Direct Access to this location is not allowed.');

class viewspec_ttfsp 
	{
	function viewspecttfsp($rows, $params, $rowspec, $sid, $jcmt, $my){
		$wr1 = '&tmpl=component';
		$wr = $sid ? '&sid='.$sid : '';
		echo '<div class="ttfspspec"><table class="tablevs">';
		$url_site = $params['url_site'];
		for ($i=0, $n=count($rows); $i < $n; $i++) {
		$row = $rows[$i];
		$sprspecname='';		
		$sprspecdesc='';		
		$img = $row->photo && !$row->offphoto ? '<img class="photovs" src="'.$url_site.$row->photo.'">' : ''; 
		$link = 'index.php?option=com_ttfsp&idspec='.$row->id.$wr .$row->id1.$wr1;
		$slink = 'index.php?option=com_ttfsp&view=detail&idspec='.$row->id;
		$row->desc = str_replace(chr(13),'
',$row->desc);
		for($s=0;$s<count($rowspec);$s++){
			$myvalue = $rowspec[$s]->id;
			if ( strpos( ' '.$row->idsprspec, ','.$myvalue.',' )){
				$sprspecname .= $sprspecname ? '
'.$rowspec[$s]->name : $rowspec[$s]->name;		
				$sprspecname .= $rowspec[$s]->desc ? ': '.$rowspec[$s]->desc : '';
			}
		}
		$sprspecname = str_replace(chr(13),'
',$sprspecname);
		if (JVERSION=="1.0"){
			$link=sefRelToAbs($link);
			$slink=sefRelToAbs($slink);			
		} else {
			$link=JRoute::_($link);
			$slink=JRoute::_($slink);			
		}
		$link = '<a href="'.$link.'">'.$params['title_btn'].'</a>';
		?>
		<tr>
		 <td class="tdvs" valign="top">
			<?php echo $img; ?>
		 </td>
		 <td class="tdvs" valign="top">
			<div class="fiospec" style="">
			<?php echo $row->name; ?></div>
			<div class="descspec">

			<?php echo $row->desc; ?></div>
			<?php 
				if ($params['jcomment'] && !$jcmt){
					echo '<div class="jcomm_btn"><a href="'.$slink.'">';
					echo $params['tjcomment'];
					echo '</a></div>';
				}
			?>
			<?php 
				if ($row->idusr == $my->id && (int)$my->id>0){
					if ($row->addtm){
						$linkt = 'index.php?option=com_ttfsp&task=addtm';
						echo '<div class="addtm_btn"><a href="'.$linkt.'">';
						echo _ttfsp_lang_209;
						echo '</a></div>';
					}
					if ($row->adddt){
						$linkd = 'index.php?option=com_ttfsp&task=adddt';
						echo '<div class="adddt_btn"><a href="'.$linkd.'">';
						echo _ttfsp_lang_210;
						echo '</a></div>';
					}
						if ($row->adddt){
						$linkd = 'index.php?option=com_ttfsp&task=adddt';
						echo '<div class="adddt_btn"><a href="http://таррара.ru/bd1/">';
						echo Записи;
						echo '</a></div>';
					}
				}
			?>			
		 </td>
		 <td class="tdvs" valign="top">
		 <div class="spec">

			<?php echo $sprspecname; ?></div>
		 </td>
		 <td  class="tdvs" valign="top">

			<div  class="btn btn-success" style="background-color:#FFFFF"><?php echo $link; ?></div>
			
		 </td>

		</tr>





		<?php

		}
		echo '</table></div>';
			if ($params['jcomment'] && $jcmt){		
				$comments =  JPATH_ROOT_SITE.'/components/com_jcomments/jcomments.php';
				if (file_exists($comments)) {
					require_once($comments);
					echo '<div> 
';
					echo JComments::showComments($row->id, 'com_ttfsp',$row->name);
					echo '</div>';
				}
			}
		
				
	}
}



?>


</div>


</body>

</html>



Пробовал также через аякс, но ничего не получается...
ПОдскажите, кто , что думает...
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / header не перенаправляет а открывает код страницы. / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]