[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: странность с IE
m4a1fox
Вот такая форма
 <form method="post" action=" " class="comment-form">
<b>
Я прочитал</b>  <input name="ok" value="1" type="checkbox">
<br />
<input
type="submit" name="submit" value="Согласен" id="ok" />

</form>
вот ее обработчик
	<?php
if(!empty($_POST['submit']) && $_POST['ok'] == 1)
{
echo '<center><img src="img/ok.png"><br /><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='1; URL=you_mail.php'>
</HEAD></HTML>"
;
}

?>
везде правильно переадресовывает кроме IE. Кто чем может помочь?!



Спустя 4 минуты, 31 секунда (4.01.2011 - 19:43) inpost написал(а):

Спустя 1 минута, 2 секунды (4.01.2011 - 19:44) inpost написал(а):
Каким образом ты представляешь двойное открытие HTML? Оно открывается одинажды! Если ты выводишь первый текст в BODY, ты не можешь снова вывести HEAD, собственно как и его элементы.

Спустя 2 минуты, 55 секунд (4.01.2011 - 19:47) m4a1fox написал(а):
inpost
не помогло( Он на главную перенаправляет!

Спустя 42 секунды (4.01.2011 - 19:48) inpost написал(а):
Как ты прописал?

Спустя 8 минут, 30 секунд (4.01.2011 - 19:56) m4a1fox написал(а):
<meta http-equiv="refresh" content="3; url=you_mail.php"> понимаете, мне нужно это было, что бы при условии если чекпоинт выделен, - тогда переадресация, иначе - нет ее. Везде все нормально работает кроме IE. Ну я уже по другому сделал.

Спустя 3 минуты, 15 секунд (4.01.2011 - 20:00) inpost написал(а):
m4a1fox
Ты второй раз за сегодня не разобраться пришел, а получить готовое, в итоге ничего не хотя учиться пишешь: ладно, проехали, я сделал по другому, вместо того, чем чуточку пошевелить мозгами... =(

Спустя 38 секунд (4.01.2011 - 20:00) phz написал(а):
Рабочий пример:

<?php ob_start(); ?>

<form method="post" action=" " class="comment-form">
<
b>Я прочитал</b> <input name="ok" value="1" type="checkbox">
<
br />
<
input type="submit" name="submit" value="Согласен" id="ok" />

</
form>

<?php
if(!empty($_POST['submit']) && $_POST['ok'] == 1)
{
echo '<center><img src="img/ok.png"><br /><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';

ob_clean();
header('Location: you_mail.php');

}

?>

Спустя 2 минуты, 5 секунд (4.01.2011 - 20:02) m4a1fox написал(а):
inpost
Так я и пошевелил)) и сделал по другому. Теперь все нормально) Зря ругаетесь)

Спустя 41 секунда (4.01.2011 - 20:03) inpost написал(а):
phz
Отправил в буфер, а на экран ведь не вывел полученный результат =) И смысл тогда твоего "Спасибо, 2 секунды..."

У него все правильно, просто местами поменять надо было первый вывод со сторым. Редирект поместить в HEAD, а "Спасибо..." отправить в BODY

Спустя 2 минуты, 14 секунд (4.01.2011 - 20:05) phz написал(а):
Рабочий пример:

<?php ob_start(); ?>

<form method="post" action=" " class="comment-form">
<
b>Я прочитал</b> <input name="ok" value="1" type="checkbox">
<
br />
<
input type="submit" name="submit" value="Согласен" id="ok" />

</
form>

<?php
if(!empty($_POST['submit']) && $_POST['ok'] == 1)
{
ob_clean();
header('Location: you_mail.php?ok');
}

if(isset($_GET['ok']))
{
echo '<center><img src="img/ok.png"><br /><b>Спасибо!</b></center>';
}

?>

Спустя 1 минута, 5 секунд (4.01.2011 - 20:06) phz написал(а):
Использовать <meta http-equiv="refresh" для переадр. там где можно использ. пхп header - это не серьёзна.

Спустя 1 минута, 34 секунды (4.01.2011 - 20:08) phz написал(а):
Или можно
header("Refresh:3; url="http://phpforum.ru");
даже лучше

Спустя 1 минута, 48 секунд (4.01.2011 - 20:10) inpost написал(а):
phz
Он тогда на phpforum попадёт...

Спустя 46 секунд (4.01.2011 - 20:10) phz написал(а):
Во общем родил, вино стукнуло...

<?php ob_start(); ?>

<form method="post" action=" " class="comment-form">
<
b>Я прочитал</b> <input name="ok" value="1" type="checkbox">
<
br />
<
input type="submit" name="submit" value="Согласен" id="ok" />

</
form>

<?php
if(!empty($_POST['submit']) && $_POST['ok'] == 1)
{
ob_clean();
header("Refresh:2; url=you_mail.php");
echo '<center><img src="img/ok.png"><br /><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';
}


?>

Спустя 1 минута, 13 секунд (4.01.2011 - 20:12) phz написал(а):
Цитата (inpost @ 4.01.2011 - 17:10)

Он тогда на phpforum попадёт...

А своя голова и логика зачем? Я для примера

Спустя 1 минута, 31 секунда (4.01.2011 - 20:13) phz написал(а):
<?php ob_start(); ?>

<form method="post" action=" " class="comment-form">
<
b>Я прочитал</b> <input name="ok" value="1" type="checkbox">
<
br />
<
input type="submit" name="submit" value="Согласен" id="ok" />

</
form>

<?php
if(!empty($_POST['submit']) && $_POST['ok'] == 1)
{
ob_clean();
header("Refresh:2; url=you_mail.php");
echo '<center><img src="img/ok.png"><br /><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';
}


?>

Спустя 18 минут, 38 секунд (4.01.2011 - 20:32) m4a1fox написал(а):
И все же интересно почему не работает в IE этот код!?
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='1; URL=you_mail.php'>
</HEAD></HTML>"
;

Спустя 32 минуты, 34 секунды (4.01.2011 - 21:04) inpost написал(а):
m4a1fox
ВОт твой вид:
<HTML>
<head>
</head>
<body>
<div>ЧЕРЕЗ 3 секунды будет сообщение</div>

<HTML>
<HEAD>
<meta - redirect>
</head>
</html>

Зелёный - правильный участок, красный - уже неправильно записан!
То есть у тебя ошибка самого построения HTML неправильная! META REDIRECT надо записывать в область HEAD ещё до BODY, а любой вывод информации автоматически уже закрывает HEAD и ставит BODY.

phz
Сделать тебе новое замечание? Или у тебя ещё старая "непонятная" злоба на меня осталась?

Спустя 4 часа, 18 минут, 7 секунд (5.01.2011 - 01:22) fallow написал(а):
Цитата (inpost @ 4.01.2011 - 17:10)
phz
Он тогда на phpforum попадёт...

Ахахах , докопался до человека tongue.gif

Спустя 11 минут, 28 секунд (5.01.2011 - 01:34) inpost написал(а):
fallow
Я дал ссылку, в примере которой был редирект на главную. Теперь человек мне отвечает: "не работает, он делает редирект на главную"!

Спустя 10 часов, 52 минуты, 18 секунд (5.01.2011 - 12:26) m4a1fox написал(а):
И все таки странно как-то работает header. Если делаю как
phz дал код, то все равно идет переадресация на главную в IE. Во всех браузерах нормально, а именно IE выпендривается. Помогите все таки разобраться.

Спустя 4 минуты, 26 секунд (5.01.2011 - 12:31) m4a1fox написал(а):
Уже вообще сделал без переадрессации, а IE все равно перенаправляет на главную.

Спустя 30 минут, 4 секунды (5.01.2011 - 13:01) m4a1fox написал(а):
<?php
include './blocks/db.php';
$url = "del_comment.php";
if (!empty($_POST['id'])) {$id = $_POST['id'];}
if($id)
{
$result = mysql_query("DELETE FROM comment WHERE `id` IN(".implode(",",$id).")");
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
}
?>
вот такое перенаправление. Только IE направляет на index.

Спустя 32 минуты, 46 секунд (5.01.2011 - 13:34) m4a1fox написал(а):
welbox2 Получается у Вас?

Спустя 4 минуты, 3 секунды (5.01.2011 - 13:38) ИНСИ написал(а):
мда :) тут столько решение давал phz и кажется не вдумывался в свой код. checkbox будет ВСЕГДА иметь значение 1, так как value стоит 1. Надо проверять на true или false....

В общем, m4a1fox попробуй так:
         if($_POST['read'] and $_POST['read'] == true) {
include './blocks/db.php';
$url = 'del_comment.php';

mysql_query("DELETE FROM `comment` WHERE `id` IN(".implode(",",$id).") ")

header('Refresh: 2; url=' . $url);
echo '<center><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';
}


<form action="" method="post">
<p><b>
Я прочитал</b> <input name="read" type="checkbox"></p>
<p><input
type="submit" name="submit" value="Согласен" id="ok" /></p>
</form>


Спустя 3 минуты, 34 секунды (5.01.2011 - 13:41) m4a1fox написал(а):
welbox2
Извините, собственно вторая часть вашего ответа из другого кода (моя ошибка.) Вот код, отвечающий за вывод комментариев, к которому относится в вашем ответе первый скрипт
$result = ("SELECT `id`, `id_mail`, `name`, `text`, `time`, `date` 
FROM `comment` ORDER BY `datetime` DESC"
);
$id = mysql_query($result);
if(!$id) exit("Ошибка - ".mysql_error());
while($myrow=mysql_fetch_assoc($id))
{
echo '
<tr>
<td align=center style="padding: 10px;">
<input name="id['
.$myrow['id'].']" type="checkbox" value="'.$myrow['id'].'">
</td>
<td style="padding-left: 5px;">
'
.$myrow['name'].'
</td>
<td style="padding-left: 5px;">
<a href="../page_view_you_mail.php?view='
.$myrow['id_mail'].'" target="_blank">
'
.nl2br(mBwordwrap($myrow['text'])). '</a>
</td>
<td style="padding-left: 5px;">
<span class="date">
'
.$myrow['date'].'</span>
</td>
<td style="padding-left: 5px;"><span class="date">
'
.$myrow['time'].'
</td>
</tr>'
;

Спустя 7 минут, 3 секунды (5.01.2011 - 13:48) m4a1fox написал(а):
В общем, реально дикость. IE перенаправляет на главную. Где-то реально глюк.)

Спустя 12 минут, 30 секунд (5.01.2011 - 14:01) ИНСИ написал(а):
m4a1fox если правильно тебя понял, то так:
        if($_POST['submit']) { // если нажата кнопка в форме
if(sizeof($_POST['id']) > 0) { // если выбраны чекбоксы
foreach($_POST['id'] as $data) { // проходим циклом, все чекбоксы
mysql_query("DELETE FROM `comment` WHERE `id` = {$data} ") // удаляем, что надо
}
}
}

$rows = mysql_query("
SELECT `id`,`id_mail`,`name`,`text`,`time`,`date`
FROM `comment`
ORDER BY `datetime` DESC
"
) or die('Ошибка - ' . mysql_error());

while($myrow = mysql_fetch_assoc($rows)) {
echo '
<tr>
<td align=center style="padding: 10px;">
<input name="id[]" type="checkbox" value="'
.$myrow['id'].'">
</td>

<td style="padding-left: 5px;">
'
.$myrow['name'].'
</td>

<td style="padding-left: 5px;">
<a href="../page_view_you_mail.php?view='
.$myrow['id_mail'].'" target="_blank">
'
.nl2br(mBwordwrap($myrow['text'])). '</a>
</td>

<td style="padding-left: 5px;">
<span class="date">
'
.$myrow['date'].'
</span>
</td>

<td style="padding-left: 5px;">
<span class="date">
'
.$myrow['time'].'
</span>
</td>
</tr>
'
;
}


В форме, кнопка отправки ДОЛЖНА иметь name="submit"

Спустя 3 минуты, 21 секунда (5.01.2011 - 14:04) ИНСИ написал(а):
Цитата
В общем, реально дикость. IE перенаправляет на главную. Где-то реально глюк.)

вот это:
$url = 'del_comment.php';

не так должно быть!!!!

Сделай так:
$url = 'http://siteName.ru/del_comment.php';

Спустя 5 минут, 43 секунды (5.01.2011 - 14:10) m4a1fox написал(а):
$url = 'http://siteName.ru/del_comment.php'; - нет. Не в этом дело. Сделал так, а он все равно на главную перебрасывает. Может это зависит от DENWER и localhost?

Спустя 7 минут, 6 секунд (5.01.2011 - 14:17) ИНСИ написал(а):
m4a1fox покажи все пожалуйста. Ты показываешь отрывки...

Спустя 2 минуты, 29 секунд (5.01.2011 - 14:19) m4a1fox написал(а):
welbox2
Хорошо. Но код большой.
<?php
include './blocks/db.php';
$url = "http://localhost/qwerty/admin/del_comment.php";
if (!empty($_POST['id'])) {$id = $_POST['id'];}
if($id)
{
$result = mysql_query("DELETE FROM comment WHERE `id` IN(".implode(",",$id).")");
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo 'Удалено';
}
?>
<html>
<
head>
<
title> Главная для удаления комментариев </title>
</
head>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

<
link href="style.css" rel="stylesheet" type="text/css">
<
body leftMargin="0" topMargin="0">
<
table class="table" CELLPADDING=0 CELLSPACING=0 width=100% height="700px">
<
tr valign="top" height="50px" bgcolor="#a50f10" align="center">
<
td valign="middle" colspan="2">
<?php
include './blocks/top.php';
?>
</td>
</
tr>
<
tr >
<
td width="150px" valign="top" style="border-right: 2px solid black;">
<
div style="margin-left: 10px; margin-top: 20px; text-decoration:none;">
<
a href="index.php"><img src="img/back.png" align="top"> Назад</a>
</
div>
</
td>

<
td width="700px" valign="top">
<
div style="margin-left: 10px; margin-top: 20px; text-decoration:none;">

<
p>
<
form action=" " method="POST" class="comment-form">
<
table width="95%" cellpadding="0" cellspacing="0" class="admin_table">
<
tr bgcolor="#2b68ac" align="center" style="color: white; font-weight: bold; font-family: verdana; font-size: 12px;">
<
th width="50px" height="25px">
 
</th>
<
th width="100px" style="padding: 10px;">
Имя
</th>
<
th widht="400px">
Текст
</th>
<
th widht="100px">
Дата
</th>
<
th>
Время
</th>
</
tr>

<?php
function
mBwordwrap($text, $width = 40, $break = "<br />")
{
return preg_replace('#([^\s]{'. $width .'})#', '$1'. $break , $text);
}
$result = ("SELECT `id`, `id_mail`, `name`, `text`, `time`, `date`
FROM `comment` ORDER BY `datetime` DESC"
);
$id = mysql_query($result);
if(!$id) exit("Ошибка - ".mysql_error());
while($myrow=mysql_fetch_assoc($id))
{
echo '
<tr>
<td align=center style="padding: 10px;" class="admin_table_td">
<input name="id['
.$myrow['id'].']" type="checkbox" value="'.$myrow['id'].'">
</td>
<td style="padding-left: 5px;">
'
.$myrow['name'].'
</td>
<td style="padding-left: 5px;">
<a href="../page_view_you_mail.php?view='
.$myrow['id_mail'].'" target="_blank">
'
.nl2br(mBwordwrap($myrow['text'])). '</a>
</td>
<td style="padding-left: 5px;">
<span class="date">
'
.$myrow['date'].'</span>
</td>
<td style="padding-left: 5px;"><span class="date">
'
.$myrow['time'].'
</td>
</tr>'
;
}
?>
</table>
<
br />
<
input type="submit" name="button" value="Удалить">
</
form>
</
p>
</
div>
</
td>
</
tr>
</
table>
</
body>
</
html>

Спустя 16 минут, 11 секунд (5.01.2011 - 14:36) m4a1fox написал(а):
welbox2
Понимаете. Везде работает кроме IE. И все таки я думаю, что это глючит сам IE совместо с работой Denwer'а.

Спустя 2 минуты, 27 секунд (5.01.2011 - 14:38) ИНСИ написал(а):
m4a1fox попробуй так:
Свернутый текст
<?
if($_POST['submit']) { // если нажата кнопка в форме
include './blocks/db.php';
$url = 'http://' . $_SERVER['HTTP_HOST'] . '/qwerty/admin/del_comment.php';

if(sizeof($_POST['id']) > 0) { // если выбраны чекбоксы
foreach($_POST['id'] as $data) { // проходим циклом, все чекбоксы
mysql_query("DELETE FROM `comment` WHERE `id` = {$data} ") // удаляем, что надо
}
}

header('Refresh: 2; url=' . $url);
echo '<center><b>Спасибо! Через 2 секунды вы будете перенаправленны</b></center>';
} else {
?>
<!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 href="style.css" rel="stylesheet" type="text/css">
</head>

<body leftMargin="0" topMargin="0">

<table class="table" CELLPADDING=0 CELLSPACING=0 width=100% height="700px">
<tr valign="top" height="50px" bgcolor="#a50f10" align="center">
<td valign="middle" colspan="2">
<?php
include './blocks/top.php';
?>
</td>
</tr>
<tr >
<td width="150px" valign="top" style="border-right: 2px solid black;">
<div style="margin-left: 10px; margin-top: 20px; text-decoration:none;">
<a href="index.php"><img src="img/back.png" align="top"> Назад</a>
</div>
</td>

<td width="700px" valign="top">
<div style="margin-left: 10px; margin-top: 20px; text-decoration:none;">

<p>
<form action="" method="POST" class="comment-form">
<table width="95%" cellpadding="0" cellspacing="0" class="admin_table">
<tr bgcolor="#2b68ac" align="center" style="color: white; font-weight: bold; font-family: verdana; font-size: 12px;">
<th width="50px" height="25px">

</th>
<th width="100px" style="padding: 10px;">
Имя
</th>
<th widht="400px">
Текст
</th>
<th widht="100px">
Дата
</th>
<th>
Время
</th>
</tr>

<?php
function mBwordwrap($text, $width = 40, $break = "<br />")
{
return preg_replace('#([^\s]{'. $width .'})#', '$1'. $break , $text);
}
$rows = mysql_query("
SELECT `id`,`id_mail`,`name`,`text`,`time`,`date`
FROM `comment`
ORDER BY `datetime` DESC
") or die('Ошибка - ' . mysql_error());

while($myrow = mysql_fetch_assoc($rows)) {
echo '
<tr>
<td align=center style="padding: 10px;">
<input name="id[]" type="checkbox" value="'.$myrow['id'].'">
</td>

<td style="padding-left: 5px;">
'.$myrow['name'].'
</td>

<td style="padding-left: 5px;">
<a href="../page_view_you_mail.php?view='.$myrow['id_mail'].'" target="_blank">
' .nl2br(mBwordwrap($myrow['text'])). '</a>
</td>

<td style="padding-left: 5px;">
<span class="date">
'.$myrow['date'].'
</span>
</td>

<td style="padding-left: 5px;">
<span class="date">
'.$myrow['time'].'
</span>
</td>
</tr>
';
}
?>
</table>
<br />
<input type="submit" name="submit" value="Удалить">
</form>
</p>
</div>
</td>
</tr>
</table>

</body>
</html>

<? } ?>


Цитата
Понимаете. Везде работает кроме IE. И все таки я думаю, что это глючит сам IE совместо с работой Denwer'а.

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

Спустя 1 минута, 42 секунды (5.01.2011 - 14:40) m4a1fox написал(а):
Цитата
просто у всех браузеров разные стандарты. Может ты, что -то не так делаешь ... Если есть возможность протести на хостинге.
нет такой возможности, к сожалению.

Спустя 3 минуты, 3 секунды (5.01.2011 - 14:43) m4a1fox написал(а):
welbox2
Да, Ваш код работает. Можете объяснить, что вы изменили, и с чем связано то, что теперь работает?

Спустя 12 минут, 8 секунд (5.01.2011 - 14:55) ИНСИ написал(а):
m4a1fox смотри мой код. Там все понятно
Быстрый ответ:

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