submit後,show出的頁面不同於submit之前的頁面。它包含了提交的數據。所以你刷新時,系統會提示要重新提交數據。你這樣做沒甚麼不好呀。

解决方案 »

  1.   

    submit之后的操作包含了一些对数据库的插入。
    我f5的结果是弹出了一个对话框,有重发和取消两个命令按钮,如果点“重发”,就类似于重新按了一次submit,结果就是 数 据 被 重 新 插 入 了 一 次,而且,接着按f5,结果和前面一样;
    如果点取消,那就什么都没做。
      

  2.   

    效果一样呀?
    把action的值改为另一个页面,就可以了。
      

  3.   

    第一个页面,main.php
    <body>
    <?  
      echo "<form method='POST' action='sayok.php'>";
      echo "<p align='center'>我要发言</p>";
      echo "<p>文章标题:<input type='text' name='title' size='75'><br>";
      echo "<br>文章正文:<br>";
      echo "<textarea rows='14' name='comment' cols='88'></textarea></p>";
      echo "<p><input type='submit' value='确认修改' name='B1'></p>";
      echo "</form>";
    ?>第二个程序:sayok.php (三秒钟返回)
    <?
    $db = mysql_connect("localhost", "root");mysql_select_db("first",$db);$result = mysql_query("INSERT INTO tip (title,comment) VALUES ('$title','$comment')",$db);echo "<body>你已经提交成功,正在返回!"; 
    echo "<meta http-equiv='refresh' content='3;URL=main.php'></body>"; 
    ?>第二个页面返回时,第一个页面是空的,就可以了。(不过我没试过。)
    如果第一个页面还有内容。可以考虑加入一句
    <meta http-equiv=pragma content=no-cache>
    该句可以立即刷新,不用手动刷新。例子
    <head>
    <meta http-equiv="content-type" content="text/html; charset=gb2312">
    <meta http-equiv=pragma content=no-cache>
    <title>我的记事本</title>
    </head>如果你有自动返回,也可以在第二个页面显示刚刚提交的内容,然后让
    使用者手动返回也可。上面的程序理论上可以运行,不过我还没有尝试。:-)