2015-02-24 113 views
1

使用POST请求,我得到了一个我想用它的id链接mySQL数据库的人的名字。为此,我创建了一个查询,如下所示,我需要将结果(一个简单数字)放入一个变量中,以用于其他查询。将sql请求的结果存储在一个变量中php

我知道我可以用SQL制作关节,但我试图这样做。

$owner = $_POST['owner']; 

$queryUser = "SELECT id FROM collections WHERE name = '$owner'"; 
$idUser = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 

有了这个代码,因为它显示为0,我不能使用$idUser,1(recogniezd作为一个数组?)或没事的时候我尝试将它在我的数据库的地方写。我试图用intval()函数没有结果...

任何帮助吗?

+0

记得去取结果^^ – Djip 2015-02-24 13:16:19

回答

1

你有来从查询结果:

$res = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 
$idUser = $res->fetch_assoc(); 

所以你的ID将是$ ID用户[“身份证”]

+0

我用了'FETCH_ASSOC()'​​,但我不知道,我将不得不使用'$ ID用户[“身份证”]',而不是'$ idUser'。非常感谢! – ahbon 2015-02-24 13:20:39

+0

实际上,抓取显示的是'echo'的id值,但我的数据库中仍然有0 ... – ahbon 2015-02-24 13:27:15

+0

您正在从数据库中选择id,并且您的结果id位于$ idUser ['id'] 。请说明缺少的是什么? – taliezin 2015-02-24 13:29:36

0

可以使用fetch_array方法,取结果作为关联数组

$query = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 

$row = $query->fetch_array(MYSQLI_ASSOC); 

echo $row['id'] 
相关问题