[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Перенаправление
бриклор
Здравствуйте, делаю регистрацию, все удачно складывалось до энного момента. Проверка заполненности с помощью AJAx, идет запрос к php файлу, а затем вывод ошибок. Но сейчас когда я завершил работу над этим, поставил себе задачу перенаправить пользователя на другую страницу в случае успешной регистрации.Но не получается. Пытался сделать это с помощью header("Location") но т.к. код в середине, под html тэегами, то это бесполезно. затем попробовал с помощью <meta .. refresh> но! перенаправления нет. открыл код страницы с помощью ctrl+u в том диве в который я вывожу текст ошибки или того же <meta> нету . Тем не менее вывод ошибки есть(имею ввиду на экране). посмотрел через firebug вывод <meta refresh> есть, но результата ноль.
AJAx:
function checker(){
$("#warning").load("proverka/proverka.php", $("#form").serializeArray());
}

Кнопка отправки:
<input type="button" onclick="checker()" value="next">

вывод идет в этот div:
<div id="warning" ></div>

в случае успешно регистрации , работает этот код:
if($a==true)
{
$query = mysql_query("INSERT INTO users
VALUES ('','
$name','$family','$email','$pass','') ");
echo '<META HTTP-EQUIV="REFRESH" CONTENT="0;URL=http://www.shtogrin.com/">';
}




Спустя 1 час, 12 минут, 41 секунда (14.04.2011 - 08:28) Trianon написал(а):
Цитата
Пытался сделать это с помощью header("Location") но т.к. код в середине, под html тэегами, то это бесполезно.


Так если Вы знаете, в чем причина, что мешает переделать код так, чтобы логика оказалась раньше тегов?

Спустя 52 минуты, 4 секунды (14.04.2011 - 09:20) бриклор написал(а):
а как я это сделаю то? мне что ошибку выводить аж перед шапкой чтоли. Проблема в том что проверяет один файл. И выводится весь результат в один div.
как по другому сделать я не знаю. Хочется чтобы проверка была без перезагрузки странички.

Спустя 38 минут, 22 секунды (14.04.2011 - 09:59) sebastjan написал(а):
Я имел удовольствие так же с этм столкнуться, один вриант это использовать буферизацию,
а второй варант более приемлимый разделитьлогику и хтмл, то есть логику рнр сначало а потом уж хтмл вывод.
Или уж вывести форму в отдельный файл рнр в котором будет обработка формы и там использовать хеадер.
Я думаю так, если форма втавленна в середине и хеадер нет возможности использовать,
записать в
action="адресс"
адресс файла обработчика итам разместить логику рнр.
Типа контролёра, и там условие если всё окей, то хедер перенаправляеттуда то или если нет то туда то.
А вообще у Ирбис это дело хорошо расписанно и пробуферизацию.

Спустя 6 минут, 5 секунд (14.04.2011 - 10:05) inpost написал(а):
бриклор
irbis-team.com , модель MVC

sebastjan
Буфер - это второстепенное, редирект происходит ещё на уровне контроллера до вывода данных на экран.

Спустя 16 минут, 31 секунда (14.04.2011 - 10:21) sebastjan написал(а):
inpost
может не в тему но подскажи что за функция на ирбис escapeString
не могу найти описание.

`password` = '". escapeString($POST['value2']) ."'"  

Спустя 5 часов, 2 секунды (14.04.2011 - 15:21) бриклор написал(а):
простите но что такое логика php?

Спустя 17 минут, 53 секунды (14.04.2011 - 15:39) Renden написал(а):
бриклор
А непроще сделать так?)

<input type="button" class="next" value="next">


$(".next").click(function(){
$("#warning").load("proverka/proverka.php", $("#form").serializeArray());
setTimeout('location.replace("http://перенаправление через 3 секунды адрес")', 3000);
}

Да и load это не $.ajax({ })

Спустя 12 минут, 32 секунды (14.04.2011 - 15:52) бриклор написал(а):
Renden
я порписал ваш код но он ругается на $(document).ready(... как быть?

Спустя 13 минут, 44 секунды (14.04.2011 - 16:05) Renden написал(а):
бриклор
Скобку не закрыл, попробуй так.

$(".next").click(function(){
$("#warning").load("proverka/proverka.php", $("#form").serializeArray());
setTimeout('location.replace("http://перенаправление через 3 секунды адрес")', 3000);
});

Спустя 47 минут, 59 секунд (14.04.2011 - 16:53) бриклор написал(а):
Хм. странно вообще нету никакого результата. Всм он не перенаправляет.
УУУУРРРРРРРРРРРРРРААЯЯЯЯЯЯЯАЯАЯАЯА
делает перенаправление. только вот если есть ошибка он всеравно перенаправляет=(
ууууухуху. сделал. все работает отлично! спасибо!. запомню данную функцию для js благодарь+ в репу!

Спустя 30 минут, 54 секунды (14.04.2011 - 17:24) бриклор написал(а):
так, теперь вопрос как Include сделать правильно? Я знаю что нужно указывать относительно этого файла, но мне нужно сделать это из папки papka/papka2/test.php а файл для includ'a papka/includes/include.php как сделать Include?

Спустя 2 дня, 2 часа, 11 минут, 8 секунд (16.04.2011 - 19:35) бриклор написал(а):
Людииии скажите что за ошибка такая?
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in 

ну на Localhost все работало а тут ни в какую(на сервере).
Прикладываю код:

$connect = mysql_connect('localhost','','');
$db = mysql_select_db(');
$email = $_POST['
email'];
$result = mysql_query("SELECT * FROM us Where email='
$email'",$connect);
$rows=mysql_num_rows($result)


и еще. делаю кодировку в файле registraciya.php на 1251 и на proverka.php 1251 делаю проверку аяксом но выводит квадратики. почему так?
для наглядности http://эксилент.ком.рф/cool/registration.php

Спустя 3 минуты, 41 секунда (16.04.2011 - 19:39) neadekvat написал(а):
бриклор, поищите ответы в faq.

Спустя 18 минут, 22 секунды (16.04.2011 - 19:57) бриклор написал(а):
neadekvat
тьфу ты елки палки а, такая тупая ошибка, бд не выбрана. спасибо!

Спустя 2 минуты, 15 секунд (16.04.2011 - 20:00) neadekvat написал(а):
Принцип тот же.

Спустя 1 минута, 38 секунд (16.04.2011 - 20:01) бриклор написал(а):
все все спасибо!

Спустя 1 минута, 23 секунды (16.04.2011 - 20:03) бриклор написал(а):
остались квадратики-кракозябры

Спустя 1 минута, 47 секунд (16.04.2011 - 20:04) neadekvat написал(а):
На этот вопрос там тоже есть ответ. Пункт 8.

Спустя 29 секунд (16.04.2011 - 20:05) бриклор написал(а):
ну покажите скриншот экрана ваш. а то у меня нету пункта 8 0_о

Спустя 3 минуты, 39 секунд (16.04.2011 - 20:09) neadekvat написал(а):
Б..ть, действительно. Бесит. Как испарился.

Спустя 10 минут, 7 секунд (16.04.2011 - 20:19) бриклор написал(а):
буду ждать статьи-ответа=)

Спустя 1 минута, 13 секунд (16.04.2011 - 20:20) sebastjan написал(а):
Цитата (бриклор @ 14.04.2011 - 14:24)
так, теперь вопрос как Include сделать правильно? Я знаю что нужно указывать относительно этого файла, но мне нужно сделать это из папки papka/papka2/test.php а файл для includ'a  papka/includes/include.php как  сделать Include?

Прописать путь

include("../../papka/includes/include.php");

Спустя 3 минуты, 43 секунды (16.04.2011 - 20:24) бриклор написал(а):
sebastjan
а в инклуде можно прописывать http://?

Спустя 2 минуты, 52 секунды (16.04.2011 - 20:26) sebastjan написал(а):
В инклюдн можно прописать всё что угодно, в твоём случаи ты манипулирешь в файловом дереве своего вэб сервера
Если тебя инрересует можно ли инклюдить файл с друго сервера, можно и так.
Про *квадратики-кракозябры* - установи нормальную кодировку.
В голове файла первой строкой без пробелов впиши
<? header("Content-Type: text/html; charset=utf-8"); ?>

Это панацея если вдруг захочеться вписать что то на разных языках.

Спустя 16 часов, 2 минуты, 3 секунды (17.04.2011 - 12:29) бриклор написал(а):
sebastjan
спасибо! выручили. теперь все отлично!!

Спустя 30 минут, 24 секунды (17.04.2011 - 12:59) бриклор написал(а):
сейчас возник вопрос. есть переменная $message в нее нужн оположить сообщение и отправить с помощью Mail() но я не знаю как мне в переменную $message положить: Здравствуйте,",$name,". Тоесть чтобы в тексте была переменная.

Спустя 1 час, 38 минут, 18 секунд (17.04.2011 - 14:37) sebastjan написал(а):
Может быть я не совсем понял.
Есть переменная $message и в неё положить текс.
Так это просто
$message="text text text text text";

Спустя 3 часа, 17 минут, 54 секунды (17.04.2011 - 17:55) бриклор написал(а):
неет. мне нужн осделать так
$message="text",$name," text text text text";

Спустя 12 минут, 30 секунд (17.04.2011 - 18:08) sebastjan написал(а):
Ну так сложи при помощи точки строки

$message="text".$name." text text text text";


бриклор ты случаем не издиваешься
:blink:

Спустя 8 минут, 56 секунд (17.04.2011 - 18:17) бриклор написал(а):
sebastjan
оу майн готтт. мой моск вынес паскаль простите пожалуйста! в школе проходим я и завис на ,$name, там же так=)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.