0

我有一个表格可以将内容发布到数据库中。表单的现有数据库内容作为值发布到表单中。使表单显示现有的数据库内容。

提交时,数据库会更新,并且要在表单中查看新更新的内容,必须重新加载页面。

我在 javascript 中生成了一个重新加载脚本,以在提交时重新加载页面。页面重新加载,但 php 内容没有更新。该页面仍然需要手动重新加载才能显示新内容。

这是我的表格的代码。

<form method="POST" action="">
        <input type="text" name="title" <?php echo "value=\"" .$row['title']."\">"?>
        <textarea id="editor" name="content"><?php echo $row['content']; ?></textarea>
        <input type="submit" name="save" value="Save" class="submit" onclick="reload();">
    </form>

Javascript

function reload(){
document.location.reload(true);
}

我也试过

window.location = window.location.href;

两者都在重新加载页面,但没有刷新 php。

4

3 回答 3

1

在选择要在表单值中显示的记录之前,您应该首先使用提交的值更新数据库。

<?php $_SERVER['PHP_SELF'] ?>在表单动作中使用。

  1. mysql_query("UPDATE xyz SET title=$_request['title'],... WHERE id = 1") 。

2.然后选择查询mysql_query("SELECT * from xxx where id =1")。

这些可能会解决您重新加载以获得新值的问题。

于 2013-10-21T11:41:27.330 回答
0

java 脚本只在客户端执行。php是服务器端。您需要重新加载 PHP。

<form method="POST" action="<<NAME OF YOUR PHP>>.php">
    <input type="text" name="title" <?php echo "value=\"" .$row['title']."\">"?>
    <textarea id="editor" name="content"><?php echo $row['content']; ?></textarea>
    <input type="submit" name="save" value="Save" class="submit" onclick="reload();">
</form>
于 2013-10-21T11:10:30.883 回答
0

是否有理由需要使用 ajax 来完成?如果您不需要ajax,最好用php处理它。ajax 的工作量更大,并且与通过 php 提交表单的成功率不同,有时会发生奇怪的事情。您可以在保存表单后进行重定向:

header("Location: /routeToYourPage&id=".$ID,TRUE,303);
于 2013-10-21T11:35:05.727 回答