2015-05-13 3 views
1

Эта линия работает отлично:PHP :: Mysqli не вставляет новую строку с переменной

$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES (1,2,3)"); 

Но это не так:

session_start(); 
$sessionID=session_id(); 
$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES (1,2,$sessionID)"); 

Я также попытался:

session_start(); 
$sessionID=session_id(); 
$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES (1,2,".$sessionID.")"); 

Все строки таблицы, определенные как TINYTEXT.

+1

Строки всегда должны быть б! между кавычками. Например: '$ mysqli-> query (" INSERT INTO table (column_1, column_2) VALUES ('значение', '". $ Value2."') "); ' Также убедитесь, что переменная эффективна как переменная, а не просто строка ... упомянутая как второе значение в запросе –

ответ

7

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

$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES ('1','2','" . $sessionID . "')"); 
+0

Я делал это раньше и не работал ...:/ –

+0

См. Комментарий от @Jeroen Bellemans , тоже;) – Florian

+0

@ Hezi-Gangina Какова обратная стоимость вашего запроса? – Florian

1

Благодаря @Jeroen Bellemans и @Florian ...

Я объединить оба метода, и он работает как шарм;)

$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES ('1','2','".$sessionID."')"); 

Спасибо, ребята

Смежные вопросы