我已经构建了一个多页表格和两个表格如下:
表1 - 列表。 表2 - 附件。
Page1 - 用户选择一个类别 page2 - 执行MYSQL插入查询,在查询列表中创建记录。用户输入标题,说明,上传附件并单击提交。上传按钮将打开一个允许用户上传附件的页面。上传附件将上传文件并在附件表中插入记录。
page3 - 执行MYSQL更新查询以使用标题和描述更新列表记录。
我知道这不是最好的设置,但我有这种方式,因为我需要列表记录中的记录号添加到附件记录。一切都运作正常。我遇到的问题在第2页。如果用户刷新页面,重复的记录将插入列表表中。 如何阻止INSERT查询在刷新时重新执行? 如果您认为我需要更改整个设置,我愿意接受建议。
谢谢。
答案 0 :(得分:0)
只需在数据库的列表中创建一个唯一的索引,这将标识它的唯一性,这样您的MySQL数据库将避免插入另一个值并返回错误,如果用户尝试以这种方式插入相同的值然后可以控制您的应用程序在插入新值时发生错误时执行另一个操作。
答案 1 :(得分:0)
在第二页中定义会话
<?php
session_start();
if(isset($_SESSION['flag'])!=1)
{
mysql_query($query);
$_SESSION['flag']='1';
}
?>
重要提示:请记住在第1页中取消设置会话
session_start();
session_unset();