这个想法:
我一直在尝试根据用户的预测创建一个单向聊天系统,通过服务器端使用预设的自动响应。
问题:
到目前为止,我所拥有的效果很好,尽管我现在遇到的问题是我无法在本地存储用户输入的最后一个消息,以便在不使用大量_GET
的情况下将聊天流入消息。
使用我当前的代码:
if (isset($_POST['test'])) {
$test = htmlentities($_POST['test']);
echo "<span class='you'>".$name."</span>: ".$test;
if (preg_match('~'b(?:about)'b~', $test)) {
echo '<br />'.$about;
} else if (preg_match('~'b(?:projects?|works?)'b~i', $test)) {
echo '<br />'.$projects;
} else if (preg_match('~'b(?:contact|email|inquiry)'b~', $test)) {
echo '<br />'.$contact;
} else {
echo "<br />Error!";
}
}
例如,如果用户在输入中键入projects
,则$projects
回显正确,但在用户键入 about
之后,$about
确实会显示,但上一条projects
消息消失。
我尝试过的:
- 我试图将每个
if
放在自己的isset
中。 - 考虑了一个在每条消息后进行新输入的循环,尽管我认为这可能不是 PHP 的有效使用,但我需要找到一种更简洁的方法。
>您可以使用AJAX
,以使旧邮件在提交时不会消失。
对聊天消息有<ul>
。当用户发帖时,创建一个带有他的消息和另一个答案的<li>
,并继续添加它们......