Php mysqli_multi_查询不返回任何值
在mysqli\u multi\u query的帮助下,我启动了以下查询。它正在正确执行,但不返回任何值。它返回空白。Php mysqli_multi_查询不返回任何值,php,mysql,codeigniter,mysqli,Php,Mysql,Codeigniter,Mysqli,在mysqli\u multi\u query的帮助下,我启动了以下查询。它正在正确执行,但不返回任何值。它返回空白。mysqli\u multi\u查询有什么问题吗或者在codeigniter中触发多个查询有什么替代方法吗 $sql="LOCK TABLE xp_subunit WRITE; "; $sql .= "SELECT @myLeft := ".$_GET['lft'].", @myRight := ".$_GET['rgt'].", @myWidth := ".$
mysqli\u multi\u查询有什么问题吗
或者在codeigniter中触发多个查询有什么替代方法吗
$sql="LOCK TABLE xp_subunit WRITE; ";
$sql .= "SELECT @myLeft := ".$_GET['lft'].", @myRight := ".$_GET['rgt'].", @myWidth := ".$_GET['lft']." - lft + 1
FROM xp_subunit
WHERE id =".$_GET['id']."; ";
$sql .= "DELETE FROM xp_subunit WHERE lft BETWEEN @myLeft AND @myRight; ";
$sql .= "UPDATE xp_subunit SET rgt = rgt - @myWidth WHERE rgt > @myRight; ";
$sql .= "UPDATE xp_subunit SET lft = lft - @myWidth WHERE lft > @myRight; ";
$sql.="UNLOCK TABLES;";
//echo $sql;
$query = $this->db->mysqli_multi_query($sql);
试试下面的例子吧
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";
/* execute multi query */
$mysqli->multi_query($query);
?>
我认为这可能有助于您获得解决方案。请注意:存在一个潜在的sql注入漏洞(传入$\u get['id'],等等,未经scaped),请发布读取值的方式。请参阅示例,下面是一个如何从多重查询中检索结果的示例。Codeigniter中是否有
mysqli\u多重查询
?您不需要使用本机PHP函数吗?@Yan mysqli可以用作CodeIgniter中的数据库驱动程序。