【发布时间】:2016-06-16 17:08:47
【问题描述】:
我在 Dreamweaver cs5 中工作,这意味着 php 是自动创建的。我知道一些 php,但是当我单击提交按钮时,我想不出一种方法来防止页面重新加载。我不希望它刷新,因为我正在制作一个聊天服务,刷新变得烦人。 向mysql数据库发送信息的php:
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "send")) {
$insertSQL = sprintf("INSERT INTO chat (chat_info, person_id, chat) VALUES (%s, %s, %s)",
GetSQLValueString($_POST['chatid'], "text"),
GetSQLValueString($_POST['personid'], "text"),
GetSQLValueString($_POST['chat'], "text"));
mysql_select_db($database_LVGSChat, $LVGSChat);
$Result1 = mysql_query($insertSQL, $LVGSChat) or die(mysql_error());
}
HTML格式:
<form method="POST" action="<?php echo $editFormAction; ?>" name="send" id="send">
<input name="chat" type="text" id="sendtext" placeholder="Skriv en melding..." />
<input type="button" id="sendbutton" value="" name="submit"/>
<input type="hidden" value="<?php do { ?><?php
if (strtolower($row_medlemmer['brukernavn']) == strtolower($_SESSION['MM_Username']) ) {
echo $row_medlemmer['medlemmer_id'];}
?><?php } while ($row_medlemmer = mysql_fetch_assoc($medlemmer)); ?>" name="personid" />
<input type="hidden" value="3" name="chatid" />
<input type="hidden" name="MM_insert" value="send" />
</form>
我尝试将类型从提交更改为按钮,但它只是停止了整个脚本。
【问题讨论】:
-
那就用ajax吧。
-
@nicael 我没有使用 ajax 的经验......你有没有机会展示我如何在这个脚本中实现 ajax? :P
-
@ReinBentdal 看到我的回答,我已经包含了一些链接。