我有一个用 php html 和 javascript 构建的聊天室,我希望用户能够运行我在聊天室本身中设置的命令,它是一个小型聊天室,所以我并不担心这里的安全性,这就是我想要的有
<?
session_start();
if(isset($_SESSION['name'])){
$text = $_POST['text'];
$fp = fopen("chatLogs/defaultchatlog.html", 'a');
fwrite($fp, "<div class='msgln'>(".date("g:i A").")<b>".$_SESSION['name']."</b>: ".stripslashes(htmlspecialchars($text))."<br></div>");
fclose($fp);
}
switch($text)
{
case '!clear!':
//command goes here
break;
default:
//code stuff
break;
}
?>
但这似乎没有做任何事情,我正在测试它,让它引导您到另一个页面,只是这样我知道它有效,但它不能有人帮助或给我某种替代方案
你可以看我的网站here
编辑
这是我一直在搞乱的代码,但我仍然需要帮助
<?php
session_start();
if(isset($_SESSION['name'])){
$text = $_POST['text'];
switch($_POST['text'])
{
case 'MAIL':
header('Location: http://billischill.ddns.net/mailmen.php');
break;
case 'test':
header('Location: http://billischill.ddns.net/testroom.php');
break;
default:
$fp = fopen("chatLogs/testchatlog.html", 'a');
fwrite($fp, "<div class='msgln'>(".date("g:i A").") <b>".$_SESSION['name']."</b>: ".stripslashes(htmlspecialchars($text))."<br></div>");
fclose($fp);
}
?>
最佳答案
首先,您必须在服务器 php.ini
中设置 date.timezone
- 会显示警告。
第二:您的开关始终转到默认
情况。所以我认为你需要将开关的条件从 switch($_POST['text'])
更改为 switch($text)
。我不知道为什么,但可能存在一些拼写错误或其他有效字符。
关于javascript - 用php制作命令系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36684350/