Вставить переменную PHP в запрос INSERT INTO MySQL

Вопрос: Я пытаюсь вставить переменную PHP в запрос "INSERT INTO" MySQL. Я попробовал много комбинаций без везения. Мой код ниже: $sql = 'INSERT INTO 'mse_names' ('id', 'name', 'day') VALUES (NULL, ".$testing_for.", 'test_day');'; mysql_query($sql); Я могу подтвердить, что $ testing_for содержит строку - я проверил это, вызывая var_dump прямо перед этим. Любая помощь очень ценится, спасибо

Вопрос:

Я пытаюсь вставить переменную PHP в запрос “INSERT INTO” MySQL. Я попробовал много комбинаций без везения.

Мой код ниже:

$sql = ‘INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, «.$testing_for.», ‘test_day’);’; mysql_query($sql);

Я могу подтвердить, что $ testing_for содержит строку – я проверил это, вызывая var_dump прямо перед этим.

Любая помощь очень ценится, спасибо заранее

* edit: извините, забыли упомянуть, что эти входы. $ testing_for. и проверить в столбцах уважения, когда я смотрю в таблицу, используя phpmyadmin *

Лучший ответ:

Оу..

Исправьте свои цитаты…

$sql = ‘INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, «‘.$testing_for.'», «test_day»);’;

Это было уловлено редактором SO markdown ^ _ ^

Ответ №1

Вы должны использовать двойные кавычки, если вы хотите напрямую вставлять переменные в строки:

$sql = «INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, ‘$testing_for’, ‘$test_da’);»;

Или просто используйте . оператор:

$sql = ‘INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, «‘.$testing_for.'», «‘.$test_da.'»);’; Ответ №2

Здесь я вставляю две переменные с текущей датой

$ var1 = “1”;
$ var2 = “phpmyadmin”;

$sql = ‘INSERT INTO Table_name (‘id’, ‘name’, ‘datetime’) VALUES («‘.$var1.'», «‘.$var2.'», now());’;

now() → теперь функция вставляет текущую дату и время

Ответ №3

Ваш $ sql находится в пределах одного апострофа, поэтому использование цитаты, чтобы оставить строку, не работает. Либо изменение

«.$testing_for.» to ‘.$testing_for.’ Ответ №4

Почему конкатенация строк?

Вы можете сделать это прямо:

$sql = «INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, ‘$testing_for’, ‘test_da’);»;

Но если вы хотите, вы можете сделать также:

$sql = «INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, ‘».$testing_for.»‘, ‘test_da’);»; Ответ №5

Попробуй это:

$sql = «INSERT INTO mse_names (id, name, day) VALUES (null, ‘» . $testing_for . «‘, ‘test_day’)»; mysql_query($sql) Ответ №6

попробуй это

$sql = ‘INSERT INTO ‘mse_names’ (‘id’, ‘name’, ‘day’) VALUES (NULL, «‘.$name.'», «day»);’; Ответ №7

Он просто так работает. Проверено I’v

$ insertDetais = mysql_query (“INSERT INTO Лица (имя_пользователя, poNumber, mobileNumber, emailAdd, оценка, информационный бюллетень, guessFinal) VALUES (‘$ userName’, ‘$ poNumber’, ‘$ mobileNumber’, ‘$ emailAdd’, ‘$ оценка’, ‘$ newsletter’, ‘$ guessFinal’) “, $ conMySQL);

Оцените статью
Добавить комментарий