visitor Posted October 30, 2010 Share Posted October 30, 2010 Hi Guys Somehow I can't make this chat work... maybe you've got an idea what the problem is? main.php <?php session_start(); ?> <html> <head> <title>Chat</title> <script language="JavaScript"> msg = new Array(); function showchat() { for (i = 0; i < msg.length; i++) { show.document.write(msg[i]; show.document.write("<br />"); } show.document.write("<a name='end'></a>"); } </script> </head> <frameset rows="0,*,45" border="0"> <frame name="main" src="main.php"> <frame name="show" src="show.php"> <frame name="send" src="send.php" scrolling="no"> </frameset> </html> <?php session_start(); $time = $_SESSION['time']; if (!isset($time)) $time = 0; $hdlDB = mysql_connect('localhost', 'root', ''); $strSQL = "SELECT * FROM chat WHERE time > '$curTime'"; $dhlRS = mysql_db_query('chat', $strSQL, $hdlDB); while ($arrRS = mysql_fetch_assoc($hdlRS)) { $arrMsg[] = '<b>' . $arrRS['sender'] . '</b>: ' . $arrRS['data']; $time = max($arrRS['time'], $time); } session_register('time'); ?> <html> <head> <title>Chat</title> <script language="JavaScript"> <?php if (is_array($arrMsg)) { $i = 0; foreach($arrMsg as $strLine) { echo "top.msg[$i] = '$strLine';\n"; $I++; } } ?> top.show.location.reload(); </script> </head> <body onload="window.setInterval('location.reload()', 4000)"> </body> </html> send.php <?php session_start(); if (!isset($time)) $time = 0; if (strlen($_POST['newmsg'] > 2) { $hdlDB = mysql_connect('localhost', 'root'; ''); $curTime = time(); $strSQL = "INSERT INTO chat (time, data, sender) VALUES ('$curTime', $newmsg', '$sender')"; mysql_db_query('chat', $strSQL, $hdlDB); session_register('time'); } /* end if */ ?> <html> <head> <title>Chat</title> <script language="JavaScript"> <?php if (is_array($arrMsg)) { foreach($arrMsg as $strLine) echo "top.msg[top.msg.length]=\"$strLine\""; } ?> top.show.location.reload(); </script> </head> <body bgcolor="white"> <form action="<?php echo $PHP_SELF; ?>" method="post"> <select name="sender" size="1"> <option value="Admin" <?php $sender == 'Admin' ? print 'selected' : print ''; ?>>Admin <option value="Client" <?php $sender == 'Client' ? print 'selected' : print ''; ?>>Client </select> 's Beitrag: <input type="Text" name="newmsg" size="40"> <input type="Submit" value="Send"> </form> </body> </html> show.php <html> <head> <title>Chat</title> </head> <body> <script language="JavaScript"> top.showchat(); </script> </body> </html> Database (chat) CREATE TABLE chat ( id bigint(20) NOT NULL auto_increment, time varchar(10) NOT NULL, data text, sender varchar(32) DEFAULT '1' NOT NULL, PRIMARY KEY (id), KEY id (id) ); cheers, ozzo Link to comment https://forums.phpfreaks.com/topic/217287-chat-in-php/ Share on other sites More sharing options...
Pikachu2000 Posted October 30, 2010 Share Posted October 30, 2010 You'll need to be a little more specific and explain what you mean by "doesn't work". Link to comment https://forums.phpfreaks.com/topic/217287-chat-in-php/#findComment-1128380 Share on other sites More sharing options...
visitor Posted October 30, 2010 Author Share Posted October 30, 2010 Hi, I get this error message... Parse error: syntax error, unexpected '{' in /home/web1018/public_html/send.php on line 5 ...although this "{" is needed. Thanks ozzo Link to comment https://forums.phpfreaks.com/topic/217287-chat-in-php/#findComment-1128389 Share on other sites More sharing options...
gevans Posted October 30, 2010 Share Posted October 30, 2010 You're missing a closing bracket on line 4 if (strlen($_POST['newmsg'] > 2) should be if (strlen($_POST['newmsg'] > 2)) Syntax errors are usually triggered by something on the previous line. Easy problem to fix when you take a look at the code! Also a good text editor would pick this up for you. Link to comment https://forums.phpfreaks.com/topic/217287-chat-in-php/#findComment-1128390 Share on other sites More sharing options...
visitor Posted October 30, 2010 Author Share Posted October 30, 2010 Hi, yeah, problem solved! Thanks mate Link to comment https://forums.phpfreaks.com/topic/217287-chat-in-php/#findComment-1128392 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.