[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обновление страницы
larionov_e
Пишу галерею и на главной странице у меня фотографии ресайзнутые, на которые по клику внизу выводит большую по методу ГЕТ. У каждой фотки свой айди. Посылаю запрос в БД и выводит комментарии.

ПРОБЛЕМА: Когда я отправляю комментарий, сразу он у меня не показывается, нужно обновить страницу еще раз.. и тогда он показывается. Как решить проблему не вставляя функцию header()

//ФУНКЦИЯ ВЫВОДА РЕСАЙЗНУТЫХ КАРТИНОК НА ГЛАВНУЮ
function view_img_klient()
{
$handle = opendir("small/");

$arr = array();

$i = 0;
while (false !== ($file = readdir($handle)))
{
if (($file != '.' && $file != '..'))
{
$file1 = strstr($file, '.', true);
echo '<a href="index.php?id=' . $file1 . '"' . '><img src="small/' . $file . '"></a>';
}
}
closedir($handle);
}

//ФУНКЦИЯ просмотра картинок и комментариев

function view_photo($id)
{
echo '<center><img src="big/' . $id . '.jpg' . '"></center>';
trim($id);
$s = "SELECT * FROM comments WHERE pic = '$id'";
$result = mysql_query($s) or die (mysql_error());
while ($row = mysql_fetch_assoc($result))
{
echo $row['name'] . ' ' . $row['comment'] . '<br>';
}
}


//ФУНКЦИЯ отправки комментариев в бд
function comments($id)
{

echo '<form method="POST">';
echo '<input type="text" name="name"><br>';
echo '<textarea cols="50" rows="10" name="comment" placeholder="Write comment here..."></textarea><br>';
echo '<input type="submit" value="Send">';
echo '</form>';

$name = trim($_POST['name']);
$comment = trim($_POST['comment']);
if (($name != '') && ($comment != ''))
{
$a = $_POST['name'];
$b = $_POST['comment'];

$s = "INSERT INTO comments (pic, name, comment) VALUES ('$id', '$a', '$b')";
$query = mysql_query($s);
}
$link = 'index.php?id=' . $id . '.jpg';
//header("Location: '$link'");
}




Зарание благодарен =) ПС Хедер не работает..пишет что инфа по запросу уже была отправлена




Спустя 51 секунда (1.08.2012 - 18:11) inpost написал(а):
Потому что надо обработку данных делать выше вывода информации на экран.

Спустя 4 минуты, 31 секунда (1.08.2012 - 18:15) larionov_e написал(а):
Разобрался, спасибо

Спустя 6 минут, 43 секунды (1.08.2012 - 18:22) inpost написал(а):
Обработка данных сверху, вывод данных снизу.
$var = 1; Что-то вывелось? Нет, это обработка данных.
Запрос к БД - вывелось? Нет, это обработка данных.
Добавление коммента в БД - тоже обработка данных!
echo - вывод информации на экран!

Проводишь образную черту, до неё ВСЯ ОБРАБОТКА, после неё - ВЫВОД данных.
И смело делаешь перезагрузку страницы через header() в области обработки данных.
Быстрый ответ:

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