2016-03-06 138 views
1

我想通过php添加一行到mysql。字段列表中的未知列'X'

总之,代码如下:

$email = mysqli_real_escape_string($mysqli, $_POST['email']); 

     $token = md5(uniqid(rand(), true)); 


      $mysqli->query('SET NAMES utf8'); 

      $insertsignup = "INSERT INTO `betasignup`(`signupDate`, `email`, `token`, `activated`) SELECT CURDATE(), '" . $email . "', '" . $token . "', 'N';"; 
      echo $insertsignup; 

      $insert = $mysqli->query($insertsignup) or   
       die(mysqli_error($mysqli)); 

的“回声”插入调试查询。

输出:

INSERT INTO betasignupsignupDateemailtokenactivated)SELECT CURDATE(), '[email protected]', '58d15fe49629b3942a58acfb64a0cb07', 'N';

依次为:

在 '字段列表'

未知列 '令牌'

下面是表:当插入

CREATE TABLE IF NOT EXISTS `betasignup` (
    `ID` int(11) NOT NULL AUTO_INCREMENT, 
    `signupDate` date NOT NULL, 
    `email` text NOT NULL, 
    `token` text NOT NULL, 
    `activated` enum('Y','N') NOT NULL, 
    PRIMARY KEY (`ID`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; 

查询作品完美phpmyadmin或mysql-commandline。

在本地主机开发环境它工作,在现场(网络)没有。

任何想法?

+1

因为产品上没有'token'字段? –

+0

看到第一个答案:) – Sili

回答

1

您的生产数据库可能与开发环境中的生产数据库不相似?它显然缺少现场的'标记'字段。

+0

我添加了prod的数据库结构。字段'标记'可用,并且查询在phpmyadmin中起作用 – Sili

0

发现:

刚刚搬进了整个事情从托管商拥有rootserver并没有更新我的大脑......

数据库也被搬到了rootserver。 phpmyadmin仍然是虚拟主机...

当然列'令牌'WAS失踪。

谢谢!

相关问题