字段列表中的未知列 'X'
unknown column 'X' in field list
我想通过 php 添加一行到 mysql。
简而言之,代码如下所示:
$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));
已插入 "echo" 以调试查询。
输出:
INSERT INTO betasignup
(signupDate
, email
, token
, activated
) SELECT CURDATE(), 'username@email.com', '58d15fe49629b3942a58acfb64a0cb07', 'N';
其次是:
Unknown column 'token' in 'field list'
这里是 table:
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 时完美运行。
它在本地主机开发环境中有效,在实时(网络)中无效。
有什么想法吗?
您的生产数据库可能与开发环境中的不相似?它显然缺少实时 'token' 字段。
找到了:
只是将整个东西从网络托管商转移到自己的根服务器,并没有更新我的大脑...
数据库也被移动到根服务器。 phpmyadmin 仍然是虚拟主机...
当然 'token' 列丢失了。
谢谢!
我想通过 php 添加一行到 mysql。
简而言之,代码如下所示:
$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));
已插入 "echo" 以调试查询。
输出:
INSERT INTO
betasignup
(signupDate
,token
,activated
) SELECT CURDATE(), 'username@email.com', '58d15fe49629b3942a58acfb64a0cb07', 'N';
其次是:
Unknown column 'token' in 'field list'
这里是 table:
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 时完美运行。
它在本地主机开发环境中有效,在实时(网络)中无效。
有什么想法吗?
您的生产数据库可能与开发环境中的不相似?它显然缺少实时 'token' 字段。
找到了:
只是将整个东西从网络托管商转移到自己的根服务器,并没有更新我的大脑...
数据库也被移动到根服务器。 phpmyadmin 仍然是虚拟主机...
当然 'token' 列丢失了。
谢谢!