Я хочу добавить строку в mysql через php.неизвестный столбец '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
betasignup
(signupDate
,token
,activated
) ВЫБОР 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.
В localhost dev-environment работает, в реальном времени (в сети) нет.
Любые идеи?
Потому что на prod нет поля 'token'? –
см. Первый ответ :) – Sili