![]() |
|
||||||||||
|
|||||
|
Люди подскажите как быть?
Ситуация такая есть форма отправки с двумя полями : phone и messege. Как можно сделать вернее какое условие надо написать чтоб при нормальной отправке мы попадали не на страницу которой отправляем данные а оставались на своей , я вот тут написал, правельно ли... <?
if(mail($phone, $messege))
{
// Возвращаемся на главную страницу, если всё прошло удачно
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php'>\n";
print "</HEAD></HTML>\n";
exit();
} else{
// Выводим сообщение об ошибке в случае неудачи
echo "<a href='addform.php'>Вернуться</a>";
echo("<P> Ошибка при добавлении сообщения</P>");
echo("<P> $query</P>");
exit();
}
?>
![]() |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 259
|
А может тогда аякс?
А, или нужно вернуться на совсем другую страницу? Если просто редирект, то header("Location: $url"); Но лучше встроить отправку мыла в ту страницу и аяксом сообщить об отправке - так красивее ![]() Последний раз редактировалось Сайлас; 04.06.2008 в 14:13. |
|
|||||
|
Немножко не так , я имею ввиду можно ли передать странице данные не заходя на неё?
1. Вводятся данные в форму 2. Нажимается кнопка отправить 3. Вот тут должно выполняться условие if(данные отправлены в кокой то URL) { // Переходим на страницу msg.php, если всё прошло удачно print "<HTML><HEAD>\n"; print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=msg.php'>\n"; print "</HEAD></HTML>\n"; } else{ // Выводим сообщение об ошибке в случае неудачи echo("<P> Ошибка при добавлении сообщения</P>"); } ?> Последний раз редактировалось forward; 04.06.2008 в 16:00. |
|
|||||
|
[+4 03.05.08]
|
Такой принцип работы возможен в трех вариантах:
1. Как гоаорил Салайс, Ajax. 2. Создать центральный класс со всей функциональностью сайта, и вызывать с разных страниц необходимые методы и функции. 3.1. Header("Location: /index.php"); - внутренний редирект, осуществляется средствами сервера, у клиента в адресной строке первый запрос, а в содержимом страницы - содержимое указанного адреса. 3.2. Header("Location: http://your.site.ru/index.php"); - внешний редирект. P.S.: при использовании Header(); он должен вызываться до первого вывода в поток(типа echo, print и сообщений об ошибках) |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 259
|
Кстати с хедером можно передать только GET параметры, чтобы передать POST нужно делать что-то типа такой странички, как присутствует на многих форумах:
"Сейчас произойдет перенаправление на нужную страницу". |
|
|||||
|
С Ajax ом говорите, а где б толковый пример то найти...
А в случае с ("Location: /index.php"); можно примерчик... Я понимаю это будет происходить так: 1. С страницы indx.php передаем данные например странице msg.php 2. Страница msg.php передает данные в какой то URL 3. И тут срабатывает ("Location: /index.php"); |
|
|||||
|
[+4 03.05.08]
|
#index.php
Header("Location: /msg.php"); При запросе index.php браузер клиента просто получит содержимое обработки msg.php #index.php Header("Location: http://your.site.com/msg.php"); Браузер клиента получит команду перенаправиться на страницу msg.php |
|
|||||
|
Я вот вот так на javascript:
<?
print "
<script language='javascript'>
var URL = 'http://www.mysite.ua/sms/?network=$network&phone=$phone&Message=$Message&cs=$cs&len=$len&sendbutton=$sendbutton';
var speed =2000;
function reload () {
location = 'index.php';
}
setTimeout('reload()', speed);
</script>";
echo $network;
echo $phone;
echo $Message;
echo $cs;
echo $len;
echo $sendbutton;
?>
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:29. |
|
|
« Предыдущая тема | Следующая тема » |
|
|