Вот мой код:PHP продолжает говорить недопустимое имя столбца
<?php $txtCommentor = $_POST['txtCommentor'] //from form?>
<?php $txtComment = $_POST['txtComment'] //from form?>
<?php $jobno = $_GET['jobno'] //from URL?>
<?php
//Query and connect
$query = "INSERT INTO delivery_comments (commentor, comment, jobno) VALUES ($txtCommentor,$txtComment, $jobno) ";?>
<?php $results = sqlsrv_query($conn, $query);?>
<?php echo $query?>
<?php
if($results === false) {
die(print_r(sqlsrv_errors(), true));
}
?>
Когда я запускаю страницу я получаю это эти результаты:
INSERT INTO delivery_comments (commentor, comment, jobno)
VALUES (frontdesk,bvhjfhj, 85450)
Тогда я получаю ошибку:
Array ([0] => Array ([0] => 42S22 [SQLSTATE] => 42S22 [1] => 207 [code] => 207 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Invalid column name 'frontdesk'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Invalid column name 'frontdesk'.) [1] => Array ([0] => 42S22 [SQLSTATE] => 42S22 [1] => 207 [code] => 207 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Invalid column name 'bvhjfhj'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Invalid column name 'bvhjfhj'.))
Обратите внимание, что запрос эхо-указателя является первым. Это верно. Тогда остальная часть ошибки продолжает сообщать мне, что данные, которые я хочу вставить, являются недопустимым именем столбца. Это не имеет никакого смысла. Эта информация не должна быть именем столбца, а данными, вставленными в столбец.
Я не думаю, что проблема не имеет ничего общего с одинарными кавычками, двойными кавычками и обратными кавычками , Я могу ошибаться. Он по-прежнему считает, что данные, которые я пытаюсь вставить, - это имена столбцов. – user1548989
Прочитайте это: http://www.w3schools.com/php/php_mysql_insert.asp – Michael
@ user1548989 Достаточно справедливо. Я снова открыл вопрос. –