PDO MySQL准备->;执行INSERT INTO时数据库中未出现


PDO MySQL prepare->execute INSERT INTO not appearing in Database

出于安全考虑,我正在编写一个程序来监控我拥有的一堆计算机。我正试图用以下代码将用户数据存储在数据库中:

$con->prepare("INSERT INTO `myComputers` (`hwid`, `ip`, `pcname`, `username`, `os`, `country`, `first`) VALUES (:hwid, :ip, :pcname, :username, :os, :country, :first")->execute(
      array(
        ':hwid'        => $data_array['hwid'],
        ':ip'          => $data_array['ip'],
        ':pcname'      => $data_array['pcname'],
        ':username'    => $data_array['username'],
        ':os'          => $data_array['os'],
        ':country'     => $data_array['country'],
        ':first'       => $data_array['first']
      )
    );

我没有收到任何错误,但当我查看数据库时,没有插入任何数据。我已经检查过$data_array中的每个项目实际上都设置为某个内容。这里还有我的MySQL数据库构建查询:

CREATE TABLE IF NOT EXISTS myComputers(
    hwid VARCHAR(64) NOT NULL PRIMARY KEY,
    ip VARCHAR(45) NOT NULL,
    pcname VARCHAR(50) NOT NULL,
    username VARCHAR(50) NOT NULL,
    os VARCHAR(150) NOT NULL,
    country CHAR(2) NOT NULL,
    first int(11) NOT NULL
  ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

我已经被这个问题困扰了好几个小时,不知道是什么原因造成了问题。如有任何帮助,我们将不胜感激。

以下是我正在分析的一些测试数据(我已经更改了IP地址):

blahblah
123.12.123.123
PotatoPC
MyPotato
Windows
AU
1447671823

:first")结束报价和括号问题是:first)")

所以整个声明就是

$con->prepare("INSERT INTO `myComputers` (`hwid`, `ip`, `pcname`, `username`, `os`, `country`, `first`) VALUES (:hwid, :ip, :pcname, :username, :os, :country, :first)")->execute(
 array(
        ':hwid'        => $data_array['hwid'],
        ':ip'          => $data_array['ip'],
        ':pcname'      => $data_array['pcname'],
        ':username'    => $data_array['username'],
        ':os'          => $data_array['os'],
        ':country'     => $data_array['country'],
        ':first'       => $data_array['first']
      )
    );