PHP mySQL结果到变量
我不明白这为什么不起作用。我知道这是一件非常简单的事情。我希望将第二个查询中的值放入PHP mySQL结果到变量,php,mysql,Php,Mysql,我不明白这为什么不起作用。我知道这是一件非常简单的事情。我希望将第二个查询中的值放入$newowner我得到一个数组到字符串的转换错误 $query = "INSERT INTO owners (fname, lname) VALUES ('default', 'default')"; mysqli_query( $con, $query ); echo $query; $query = "SELECT MAX(id) FROM owners"; $result = mysqli_query(
$newowner
我得到一个数组到字符串的转换错误
$query = "INSERT INTO owners (fname, lname) VALUES ('default', 'default')";
mysqli_query( $con, $query );
echo $query;
$query = "SELECT MAX(id) FROM owners";
$result = mysqli_query( $con, $query );
$newowner = mysqli_fetch_assoc( $result );
echo $newowner;
在这种情况下,
$newowner
是一个数组。尝试向查询中添加别名,如:
$query = "SELECT MAX(id) AS max_id FROM owners";
$result = mysqli_query($con, $query);
$newowner = mysqli_fetch_assoc($result);
echo $newowner['max_id'];
查看如何从关联数组中访问值,或者简单地以数字索引方式获取值
$newowner = mysqli_fetch($result);
echo $newowner[0];
这是因为返回一个数组。您需要做的是从数组中获取值,例如:
echo $newowner['MAX(id)'];
您可以通过为列名指定别名来简化它,例如,在查询中:
select max(ID) as MaxID from owners
然后你可以使用echo$newowner['MaxID']假设你的初始查询插入正确,
$newowner
实际上是一个数组,所以你不能只回显它。你可以这样展示:
print_r($newonwer);
但您最好使用以下方法:
$query = "SELECT MAX(id) as ID FROM owners";
$result = mysqli_query($con, $query);
$newowner = mysqli_fetch_assoc($result);
echo $newowner['ID'];
您是否阅读了mysqli_fetch_assoc的文档?由于mysqli\u fetch\u assoc返回一个关联数组,因此出现数组到字符串转换错误。