Help With PHP Chat(SOLVED!)
Posted: Tue Jun 21, 2011 11:58 pm
I am currently having two problems with my code; 1) I would like it to go threw my db and check if the message was posted longer then 20 minutes ago and if so then have that line of chat deleted, 2) I want it to check the type of post, if the type=5 then have it be a system broadcast so it shows up in everybody's chat in every area.
Any help or thoughts are appreciated.
chat.php
postchat.php
chatdelete.php
play.php (only the part that shows chat)
Any help or thoughts are appreciated.
chat.php
Code: Select all
<?php session_start(); ?>
<html>
<head>
<style type="text/css">
#chatdiv {background-color:#000;}
#chatdiv {color:#FFF;}
</style>
<link rel="stylesheet" type="text/css" href="main.css" />
<script type="text/javascript" src="df.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<title>Chat</title>
</head>
<body id="chatdiv" class="div" onLoad="Move()">
<?php
////////////////////////////////////////////////////////////////////
// our database settings
require('database.php');
require 'q.php';
require 'login-check.php';
$query = sprintf("SELECT id FROM chat WHERE area='$user[curarea]'", mysql_real_escape_string($user[curarea]));
$result = mysql_query($query) or die('Error:3 Chat');
$chatid = mysql_fetch_assoc($result);
/* $query = sprintf("DELETE FROM chat WHERE time-stamp>$time_check", mysql_real_escape_string($time_check));
mysql_query($query); */
if($chatid != '')
{
$query = sprintf("SELECT COUNT(chatcount) FROM chat WHERE area = '$user[curarea]'", mysql_real_escape_string($user[curarea]));
$result = mysql_query($query);
list($chatnumber) = mysql_fetch_row($result);
}
?>
<!--<table width="100%"> -->
<?php /*
$query = sprintf("SELECT COUNT(broadcast) FROM chat where type=5");
$result = mysql_query($query);
list($chat6) = mysql_fetch_row($result);
for($i=0; $i<= $chat6; $i++)
{
if($chat6 != '')
{
$query = sprintf("SELECT * FROM chat WHERE broadcast='$i'", mysql_real_escape_string($i));
$result = mysql_query($query);
$chat1 = mysql_fetch_assoc($result);
$query = sprintf("SELECT * FROM characters WHERE user_id='$chat1[user_id]' && id='$chat1[charid]'", mysql_real_escape_string($chat1[user_id]), mysql_real_escape_string($chat1[charid]));
$result = mysql_query($query) or die ('Character Error: '.mysql_error ());
$userchat1 = mysql_fetch_assoc($result); */
?>
<!--
<tr>
<td width=20% align=center>
<p id='chatecho' class="chatecho"><a target="_parent" href="inventory.php?id=<?php /* echo $userchat1[id] */ ?>"><?php /* echo $userchat1[name] */ ?> <?php /* echo $userchat1[title] */ ?></a></p>
</td>
<td align=left>
<?php /* echo $chat1[text] */?>
</td>
</tr>
<tr class=chatdivider>
<td colspan=2></td>
</tr>
-->
<?php
/* }
} */
?>
<p id='chat'>
<table width=100%>
<?php
for($i=1; $i<= $chatnumber; $i++)
{
$query = sprintf("SELECT * FROM chat WHERE area = '$user[curarea]' && chatcount='$i' ", mysql_real_escape_string($user[curarea]), mysql_real_escape_string($i));
$result = mysql_query($query);
$chat = mysql_fetch_assoc($result);
$query = sprintf("SELECT * FROM characters WHERE user_id='$chat[user_id]' && id='$chat[charid]'", mysql_real_escape_string($chat[user_id]), mysql_real_escape_string($chat[charid]));
$result = mysql_query($query) or die ('Character Error: '.mysql_error ());
$userchat = mysql_fetch_assoc($result);
if($chat[type] == '1')
{
?>
<tr>
<td width=20% align=center>
<p id='chatecho' class="chatecho"><a target="_parent" href="inventory.php?id=<?php echo $userchat[id] ?>"><?php echo $userchat[name] ?> <?php echo $userchat[title] ?></a></p>
</td>
<td align=left>
<?php echo $chat[text] ?>
</td>
</tr>
<tr class=chatdivider>
<td colspan=2></td>
</tr>
<?php
}
elseif($chat[type] == '2')
{
?>
<tr>
<td width=20% align=center>
</td>
<td align=left>
<p id='chatecho'>**<?php echo $userchat[name] ?> <?php echo $userchat[title] ?> <?php echo $chat[text] ?>**</p>
</td>
</tr>
<tr class=chatdivider>
<td colspan=2></td>
</tr>
<?php
}
}
?>
</table>
</p>
</div>
</body>
</html>Code: Select all
<?php session_start();
////////////////////////////////////////////////////////////////////
// our database settings
require('database.php');
require 'q.php';
if($_POST)
{
/* if($_POST[type]=='5')
{
$query = sprintf("SELECT COUNT(broadcast) FROM chat");
$result = mysql_query($query);
list($chatnumber) = mysql_fetch_row($result);
$chatnumber += 1;
$query = sprintf("ALTER TABLE `chat` AUTO_INCREMENT =1");
mysql_query($query) or die('Error:5 AI CHAT');
$query = sprintf("INSERT INTO chat (`id` ,`time-stamp` ,`type` ,`area` ,`user_id` ,`text` ,`charid` ,`broadcast`) VALUES (NULL , NOW() , $_POST[type] , $user[curarea] , $users[id] , '$_POST[text]' , $user[id] , $chatnumber)",
mysql_real_escape_string($users[id]), mysql_real_escape_string($user[curarea]), mysql_real_escape_string($_POST['type']), mysql_real_escape_string($_POST['text']), mysql_real_escape_string($user[id]), mysql_real_escape_string($chatnumber));
mysql_query($query) or die('Error:4 POST CHAT');
header('Location: chat.php');
}
else
{ */
$query = sprintf("SELECT COUNT(chatcount) FROM chat WHERE area = '$user[curarea]'", mysql_real_escape_string($user[curarea]));
$result = mysql_query($query);
list($chatnumber) = mysql_fetch_row($result);
$chatnumber = $chatnumber + 1;
$a=filter_var($_POST['text'], FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
$query = sprintf("ALTER TABLE `chat` AUTO_INCREMENT =1");
mysql_query($query) or die('Error:5 AI CHAT');
$query = sprintf("INSERT INTO chat (`id` ,`time-stamp` ,`type` ,`area` ,`user_id` ,`text` ,`charid` ,`chatcount`) VALUES (NULL , NOW() , $_POST[type] , $user[curarea] , $users[id] , '$a' , $user[id] , $chatnumber)",
mysql_real_escape_string($users[id]), mysql_real_escape_string($user[curarea]), mysql_real_escape_string($_POST['type']), mysql_real_escape_string($a), mysql_real_escape_string($user[id]), mysql_real_escape_string($chatnumber));
mysql_query($query) or die('Error:4 POST CHAT');
header('Location: chat.php');
}
?>Code: Select all
<?php
require 'database.php';
require 'login-check.php';
require 'q.php';
$time = time();
$time_check = $time - 1200;
$query = sprintf("DELETE FROM chat WHERE time-stamp<$time_check", mysql_real_escape_string($time_check));
mysql_query($query) or die("Delete Chat Error: 6");
?>Code: Select all
<form target=chatframe action=postchat.php method=post name=chat><span class=headertext>Chat:<br>
</span> <select name=type><option value=1>Say</option><option value=2>Emote</option><?php
if ($users[upgrade] == '1')
{
?>
<option value=3>Guild-Say</option><option value=4>Guild-Emote</option><?php
}
if($users['is_admin'])
{
?>
<option value="5">World Broad Cast</option>
<?php
}
?></select><input name="text" type="text" size="50" maxlength="250"><input type=reset value="Clear"></form>
<div id=chat><div align="center"><iframe width=99% height=250px src=chat.php name=chatframe border=1></iframe></div></div><br>