插入/更新问题(重复相同记录,不能再输入)

时间:2013-08-21 12:16:43

标签: php mysql

我有点困惑在这里,我的代码有点过于冗长而无法发布,但我会提供手头操作的逻辑列表,如果有帮助,可以提供所需的代码,但问题很奇怪,我不认为这与代码有关。它是文章网站的标准上传表单。

  1. 首次加载时,请指定随机article_ID

  2. 检查article_ID是否已存在。如果是,请重复步骤1

  3. 在保存(提交)时,插入article_ID(唯一需要的值[用于测试目的],其余值可以是NULL

  4. 检查输入的任何其他字段的内容,如果有一些输入的更新在article_ID = $article_ID

  5. 这是一个非常简单的系统,使用article_ID制作文章模板,其中所有其他字段都可以NULL。用户一路保存内容,直到输入所有字段,以便发布文章。

    但是,我第一次使用它时,分配了article_ID并插入了模板。现在我无法插入任何其他记录,更奇怪的是,如果我删除该记录然后使用新的article_ID和INSERT创建一个新的表单实例,它只会继续添加旧的{{ {1}},即使表单中没有会话变量,仍然存储旧的article_ID

    有没有人有类似的东西?

    数据库结构

    article_ID

    相关代码 http://snippi.com/s/57j8i7e

1 个答案:

答案 0 :(得分:0)

我怀疑INSERT失败了,因为您要将INTs作为VARCHARs插入。将其更改为以下内容 - 删除将VARCHAR错误地传递给它的单引号。

同样验证您的SELECT语句将返回记录,因为您在传递$article_ID时使用相同的逻辑,即删除单引号。也没有必要检查随机值。

请将AUTO_INCREMENT用于article_ID,而不是随机生成值。

 mysql_query("INSERT INTO articles (author_ID) VALUES ($author_ID)");

article_ID将填充唯一值