PHP::mySqli 不插入带有变量的新行
Posted
技术标签:
【中文标题】PHP::mySqli 不插入带有变量的新行【英文标题】:PHP:: mySqli does not insert a new line with a variable 【发布时间】:2015-07-24 18:50:51 【问题描述】:这条线运行良好:
$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 的所有表行。
【问题讨论】:
字符串应该总是在引号之间。像这样:$mysqli->query("INSERT INTO table (column_1 ,column_2) VALUES ('value', '" . $value2 . "')");
还要确保一个变量是有效的一个变量,而不仅仅是一个字符串......在查询中作为第二个值提到
【参考方案1】:
感谢@Jeroen Bellemans 和@Florian...
我融合了这两种技术,它就像一个魅力;)
$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES ('1','2','".$sessionID."')");
谢谢大家!
【讨论】:
【参考方案2】:您需要将变量作为变量传递给您的查询广告,将您的值包装成一个“”,例如:
$mysqli->query("INSERT INTO `myDatabase`.`myTable`(Date,Time,SID) VALUES ('1','2','" . $sessionID . "')");
【讨论】:
@Hezi-Gangina 你的查询返回值是多少? 谢谢你!我解决了这个问题(...见@Jeroen Bellemans 评论) ...您的答案被接受(...在您编辑后 ;--))以上是关于PHP::mySqli 不插入带有变量的新行的主要内容,如果未能解决你的问题,请参考以下文章
php,mysqli-stmt.bind-param]:类型定义字符串中的元素数与绑定变量数不匹配