Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql错误无效的参数编号:未定义参数_Mysql_Pdo - Fatal编程技术网

Mysql错误无效的参数编号:未定义参数

Mysql错误无效的参数编号:未定义参数,mysql,pdo,Mysql,Pdo,这是我的密码。我无法执行它 这是我在$db->execute()上得到的错误消息行: SQLSTATE[HY093]:参数编号无效:未定义参数' 我所要做的就是在结束双引号之前在第2行添加一个空格 这就是添加空白前后查询的外观 在此之前-“更新网关设备设置coin\u lat=:coin\u lat,coin\u lng=:coin\u lngWHEREnick\u name=:nick\u name AND gateway\u id=:g\u id AND device\u id=:d\u i

这是我的密码。我无法执行它

这是我在
$db->execute()上得到的错误消息行:

SQLSTATE[HY093]:参数编号无效:未定义参数'


我所要做的就是在结束双引号之前在第2行添加一个空格

这就是添加空白前后查询的外观

在此之前-“更新网关设备设置coin\u lat=:coin\u lat,coin\u lng=:coin\u lngWHEREnick\u name=:nick\u name AND gateway\u id=:g\u id AND device\u id=:d\u id”


“更新网关设备设置coin\u lat=:coin\u lat,coin\u lng=:coin\u lng WHEREnick\u name=:nick\u name AND gateway\u id=:g\u id AND device\u id=:d\u id”

如果您打印出
$query
,您就会明白它为什么不起作用。我认为在一个构造的查询中缺少空格是一个排版错误,然后投票结束。“GordonLinoff非常感谢,这是一个简单的空格问题。现在可以了。
$query = "UPDATE gateway_devices "
        ."SET coin_lat=:coin_lat, coin_lng=:coin_lng"
        ."WHERE nick_name=:nick_name AND gateway_id=:g_id AND device_id=:d_id";

$db->query($query);
$db->bind(':coin_lat', $coin_lat);
$db->bind(':coin_lng', $coin_lng);
$db->bind(':nick_name', $nick_name);
$db->bind(':g_id', $g_id);
$db->bind(':d_id', $d_id);
$db->execute();