我在这里有一个简单的问题,
香港专业教育学院有这种形式多数民众赞成在我的聊天HTML:
<form action="../addchat.php" method="POST" enctype="multipart/form-data">
<textarea id="textarea" style="border-radius:0px; border:none; background-color:rgb(243,243,243); min-height:100px;"name="comment" rows="4" cols="50"></textarea><br>
<input height="25px" width="20px" style="float:right;" type="image" src="../arrow.png" name="submit" value="Comment">
</form>
该表格供用户提交其聊天消息。然后,表单发布会将信息定向到addchat.php,其中包含以下代码:
<?php
ob_start();
session_start();
include_once("config.php");
$reply=mysqli_real_escape_string($mysqli,$_POST['comment']);
$cid=mysqli_real_escape_string($mysqli,$_SESSION['cid']);
$uid=mysqli_real_escape_string($mysqli,$_SESSION['userid']);
$time=time();
$ip=$_SERVER['REMOTE_ADDR'];
$q= mysqli_query($mysqli,"INSERT INTO conversation_reply (user_id_fk,reply,ip,time,c_id_fk) VALUES ('$uid','$reply','$ip','$time','$cid')") or die(mysqli_error($mysqli));
?>
显然,该脚本将数据添加到表中,然后,聊天html页面上的另一个脚本将显示聊天消息。
但是,当前的问题是,首先,用户单击提交后,页面将重定向到另一个空白页面并显示成功消息。其次,用户需要刷新才能看到新的聊天消息。
此聊天应用程序是私人聊天(类似于Facebook),因此不太确定该怎么做?希望能有所帮助:)
最佳答案
如果您不希望它重定向。将PHP代码移到与表单相同的文件中。您可以使用include
。
然后,使表格为action=""
。
然后围绕PHP,您需要检查POST是否存在,因此它仅在表单提交时运行:
例如
if (!empty($_POST))
至于刷新问题。您可能需要研究AJAX甚至socket.io。