|
Вопрос # 4 445/ вопрос открыт / |
|
Здравствуйте!
У меня такой вопрос: скрипту передаётся текст из формы на странице index.php. Этот текст он (script.php) заносит в базу данных. Если удачно, то $res=true, иначе false. Как в конце скрипта осуществить переход обратно к странице index.php, передав ей значение $res, что бы показать пользователю результат выполнения? Заранее благодарен.
Приложение: Переключить в обычный режим- <?php
- $connect=mysql_connect('localhost','root','');
- mysql_select_db('test',$connect);
- if ($_POST['mytext']!='')
- {
- mysql_query("INSERT INTO table1 VALUES ('".$_POST['mytext']."')");
- $res=true;
- } else $res=false;
-
- mysql_close($connect);
- ?>
 |
Вопрос задал: webkent (статус: 2-ой класс)
Вопрос отправлен: 19 июля 2010, 14:36
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Ерёмин А.А.
Здравствуйте, webkent!
Самое простое — послать заголовок о том, что нужно перейти на другую страницу, а параметр передать обычным GET-методом:
header('Location: page.php?res='.($res?1:0));
При этом до выполнения этой строки никакой текст выводиться не должен — заголовки отправляются перед содержимым!
 |
Ответ отправил: Ерёмин А.А. (статус: *Администратор)
Время отправки: 19 июля 2010, 14:39
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 4; последнее сообщение — 19 июля 2010, 17:01; участников в обсуждении: 3.
|
webkent (статус: 2-ой класс), 19 июля 2010, 14:43 [#1]:
понятно, скажите, а если он отправляется самым первым, а значение res формируется по ходу выполнения скрипта, будет ли это работать?
|
|
webkent (статус: 2-ой класс), 19 июля 2010, 14:45 [#2]:
Я, конечно, уже нашел способ
echo('<script language="JavaScript">
window.location.href = "index.php?res='.$res.'"
</script>');
Но хотелось бы PHPшный.
|
|
Ерёмин А.А. (статус: *Администратор), 19 июля 2010, 14:58 [#3]:
Цитата (webkent):
а если он отправляется самым первым
Кто? Заголовок?
Цитата (webkent):
а значение res формируется по ходу выполнения скрипта, будет ли это работать?
Какой будет передан Location — на такой и перейдёт. Если без вывода лишнего текста никак, то можно использовать буферизацию вывода:
<?php
ob_start();
/* делаем и выводим что хотим */
ob_end_clean();
header('Location: ...');
?>
|
|
Егор (статус: 10-ый класс), 19 июля 2010, 17:01 [#4]:
вах, Андрей САМ ответил...
чё деется на свете...
Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.
— Donald E. Knuth.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|