PHP/MySQL - 插入 1 条记录后无法提交值

标签 php mysql

我会先声明我对 PHP 和 MySQL 有点陌生。我正在尝试将我的 session 变量写入 MySQL 数据库。在我能够使用我的 HTML 表单提交第一条记录后,我认为我已经正确执行了此操作,但我无法提交其他记录。我的数据库中只显示一条记录,任何提交新记录的尝试都不会出错,只是不会出现在我的数据库中。

我的表单跨越多个页面,因此我将包括我的 PHP 代码:

<?php

  $con = mysql_connect("localhost","user","mypassword");
  if (!$con)
  {
    die('Could not connect: ' . mysql_error());
  }

  mysql_select_db("mydatabase", $con);

  mysql_query("
    INSERT INTO imaging (os,MAC,Model,AntiVirus,Browser,Email,Connectivity,Sound,Ports) 
    VALUES ('".$_SESSION['imaging2']."','".$_SESSION['imaging3']."','".$_SESSION['imaging4']."','".$_SESSION['antivirus']."','".$_SESSION['browser']."','".$_SESSION['email']."','".$_SESSION['connectivity']."','".$_SESSION['sound']."','".$_SESSION['ports']."')
  OR die("Could not update: ".mysql_error());

  mysql_close($con);

?>

我的表名是:imaging

我的数据库中的列如下:

id - My primary key field set to Auto_Increment, type is int(11)
os - text
MAC - text
Model - text
AntiVirus - text
Browser - text
Email - text
Connectivity - text 
Sound - text
Ports - text

因为它至少工作了一次,所以很明显这是我的主键字段的代码解释有问题。

任何帮助总是非常感谢。嘿,谁知道呢?也许这只是离开电脑足够长的时间让我的眼睛不再交叉和清晰的问题。 :)

我的 PHP 代码中是否缺少对我的 id 字段的引用?

最佳答案

如果这确实是您的代码,那么您对 ​​mysql_query 的调用有问题。正如您通过突出显示的语法所看到的那样,它是不正确的。你需要一个额外的 ") 最后:

mysql_query("
  INSERT INTO imaging (os,MAC,Model,AntiVirus,Browser,Email,Connectivity,Sound,Ports) 
  VALUES ('".$_SESSION['imaging2']."','".$_SESSION['imaging3']."','".$_SESSION['imaging4']."','".$_SESSION['antivirus']."','".$_SESSION['browser']."','".$_SESSION['email']."','".$_SESSION['connectivity']."','".$_SESSION['sound']."','".$_SESSION['ports']."')
") or die("Could not update: ".mysql_error());

顺便说一句,这段代码容易受到 SQL Injection 的攻击.小心!

关于PHP/MySQL - 插入 1 条记录后无法提交值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10360169/

相关文章:

php - 使用 tinymce 编辑器的问题

php - SQL - 获取 RSS 提要并插入到 SQL 中

php - MySQL IF 语句更新 MySQL 列

mysql - SQL语法错误,甚至是。一切似乎都很正常

mysql - 如何使用动态Where子句编写查询

javascript - 发送编码后的图像并在解码后上传到 s3

php - 如何向 PHP 中的现有类添加方法?

php 显示来自 MySQL 数据库的最后一个用户登录时间戳

php - 如何在 Debian 8 (Jessie) 上安装最新版本的 PHP 5.4?

mysql - 获取mysql中两个逗号分隔值之间的差异