Witam właśnie robię własnego shoutboxa, i mam problem z JS, i AJAXem. Chodzi o (jak w opisie) wysłanie wiadomości do skryptu php bez przeładowania strony, oraz odświeżenie diva z wiadomościami, bez odświeżania całej strony.
Plik sb.php > wyciąganie danych (wiadomości) z bazy
<?php
$zshout = "SELECT * FROM shout ORDER BY `date`DESC, `time` DESC";
{
<span class="sbdate">'.$w_shout['date'].' || '.$w_sb_disp['time'].'|</span>
|<<span class="sblogin">'.$w_shout['nick'].' </span>>|
<span class="sbmesage">'.$w_shout['message'].'</span>
</p>';
}
?>
fragment - index.php > czyli strona główna
<div class="shoutbox">
<div id="shoutbox_mesage">';
require_once('./sb.php');
sb();
echo'</div><div style="clear:both"></div>';
i funkcja sb() czyli dodawanie wiadomości do shoutaboxa
function sb()
{
include('pretorium/global.php');
include('pretorium/zmienne.php');
if(!empty ($_POST['nick'])&&!empty ($_POST['message'])) {
$z_add_sb = "INSERT INTO `shout` SET
`nick` = '".$_POST['nick']."',
`message` = '".$_POST['message']."',
`date` = '$date',
`time` = '$time'";
}
else
{
}
if(empty($_SESSION['login']) ) {
$value_nick = 'Nick';
}
elseif(!empty($_SESSION['login']) ) {
$value_nick = $_SESSION['login'];
}
<form action="/index.php" method="POST" id="form" style="clear: both;">
<fieldset>
<legend>Napisz coś</legend>
<input class="sb_nick" name="nick" value="'.$value_nick.'"/>
<input class="sb_message" name="message" value="Treść waidomości" />
</fieldset>
<input class="sb_send" type="submit" value="Dodaj" />
<input class="sb_send" type="reset" value="Wyczyść"/>
</form>
<div style="clear:both"></div>';
}
Szukałem tego odświeżania, ale coś mi nie idzie. Jeżeli już nawet odświeżało diva to ni wyświetlało żadnych danych.