[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пишу чат на PHP+AJAX+MySQL
Страницы: 1, 2
Platinum
Всем привет smile.gif

Пишу чат на пхп + ajax, сначала писал на фреймах, но мне подсказали что лучше писать на дивах, т.к. это красивее и удобнее.
Если можно, то буду писать сюда проблемы которые встречаются у меня)) Да и многим возможно пригодится что нить.

Появилась такая проблема. Не могу сделать запрос на AJAX для того чтобы сообщения приходили асинхронно...
Т.е. Отправил юзер сообщение - у всех сразу же оно появилось.

Что делает скрипт:

<div id="main">
<div
id="top"><?php include('top.php'); ?></div>
<div
id="head"><?php include('head.php'); ?></div>
<div
id="users"><?php include('users.php'); ?></div>
<div
id="send"><?php include('down.php'); ?></div>
</div>


id:
top - верхний див
head - выводит сообщения юзеров.
users - вывод юзеров он лайн.
send - форма отправки сообщений, добавление сообщений в базу.

в head.php (div id=head) такой код, выводящий сообщения из базы:


<?
# делаем запрос в базу - выбираем сообщения и сортируем по последнему сообщению
$result2 = mysql_query("SELECT * FROM message ORDER by id+0", $db);
# Выводим все в цикле "время -> ник -> сообщение"
while($myrow = mysql_fetch_array($result2))
{
$nick = $myrow['nick'];

echo "<b>".$myrow['time']."</b>  <font color=yellow>»</font>  <u><b>
<a href=# onClick=
\"document.getElementById('mess').value = '".$nick.": '; \">".$nick."</a></b></u>:  <span id=\"in_wrap\">".$myrow['message']."</span><br>\n";
}
?>

Дальше идёт ajax код который должен обновлять сообщения при поступлении новых сообщений:

<script type="text/javascript">
{
$.ajax({
url: "head.php",
cache: false,
success: function(html){
$("#head").html(html);
}
}
);
}
</script>

естественно библиотека jQuery подключена, код пашет, но не так как нужно.
Отправляешь сообщение, ты видишь что оно появилось, но другие нет, пока не обновят страницу или не отправят сами сообщение.
Быстрый ответ:

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