文件切换聊天应用程序代码更正

时间:2011-04-15 01:47:25

标签: php html

我在代码中做错了什么?让我解释一下,我正在尝试为我的学校编写一个聊天应用程序,并且让用户可以在.txt数据库之间自由切换,我制作了一个简单的表单和If ... Then语句切换$ file ='chatmsg.txt'到$ file ='indexmsg.txt'。我以为我说得对,但显然没有。我究竟做错了什么?感谢您的投入。

if (isset($HTTP_GET_VARS['f1']))
{ 
    $f2 = file($file) ;
    echo("<html><head><title></title><meta http-equiv='Content-Type' content='text/html; charset=utf-8'></head>") ;
    echo("<body text=#0000cc><meta http-equiv='refresh' content='{$refresh}; url={$HTTP_SERVER_VARS['REQUEST_URI']}'>") ;
    echo("<font color=#e22200>Online Users: ") ;
    foreach($users as $u) echo "<font color=#ee0099>".$u."</font> - " ;
    echo "</font><hr>" ;
    for($i=0; isset($f2[$i]) && $i<$max; $i++) { 
        $e=explode("||", $f2[$i]) ;
        if ($e[2]!="\r\n") echo "<font color=green>{$e[0]}</font> <font color=red>:</font> {$e[2]}<br>\r\n" ;
    }
    die("</body></html>") ;
}

else
{ 

$html = <<<EOA
        <html><head><title>KeyChat</title><meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
        <script><!--
        function msg(){ document.m.msg.focus(); } // --></script>
        </head>
        <body align='center' onLoad='msg()'> <center>
        <iframe src='?f1=1' width='95%' height='70%'></iframe><br>
        <table width='95%'><tr><td align='center' width='100%'>
            <form action='' method='post' name='m'>
            Message : <input name='msg' size=60> <input type='submit' name='send' value='Send'>
            <br />
            </form>
        </td></tr></table>
        <h3>Welcome to KeyChat</h3>
<p><big>NOTICE: Please chat at home, not at school.  If you chat at school, do realize that you hold all responsibility for not taking seriously this notice.</p></big>
<form name="name" action="test.php?name=Aaron" method="post">
<input type="radio" name="name" value="Aaron" /> Aaron<br />
<input type="radio" name="name" value="Benjamin" /> Benjamin<br />
<input type="submit" value="Submit">
EOA;
die($html);
}

if(empty($_REQUEST["name"])) 
    echo "No POST variables" ; 
else
    $file = 'indexmsg.txt' ;

1 个答案:

答案 0 :(得分:1)

在我看来问题就是你使用了die(),它会输出文本,但它也会停止执行脚本。

$ file永远不会获得新值,因为你之前调用了die()。将die()的两个实例更改为echo(),它应该可以工作。