我试图通过单一查询从DB中获取单个值。我的意思是我已经从一个查询中获取了所有值,因为我只需要获得一个列值。
$connection = mysqli_connect($servername, $username, $password, $dbname);
$query = mysqli_query( $connection,"select * from register where password='$log_in_password' AND username='$log_in_username'");
var_dump($query);
$table = mysqli_fetch_all($query,MYSQLI_ASSOC);
var_dump($table);
假设列是 'userid useremail用户名密码名称'
来自php的var_dump($ query)给出了这个..
object(mysqli_result)[2]
public 'current_field' => null
public 'field_count' => null
public 'lengths' => null
public 'num_rows' => null
public 'type' => null
var_dump($ table)给出了这个
array (size=1)
0 =>
array (size=5)
'userid' => string '7' (length=1)
'useremail' => string 'demo@gmail.com' (length=16)
'username' => string 'demousername' (length=7)
'password' => string 'demopassword' (length=5)
'Name' => string 'demoname' (length=6)
帮助我只获取一个列值的记录(例如insSelect *来选择用户ID)
答案 0 :(得分:0)
试试这个
$connection = mysqli_connect($servername, $username, $password, $dbname);
$query = mysqli_query($connection, "select * from register where password='$log_in_password' AND username='$log_in_username'");
$table = null;
while ($row = mysqli_fetch_array($query)) {
$table = $row;
}
print_r($table);
答案 1 :(得分:0)
您的变量$ table是一个数组,因此如果您只想要用户ID,则只需使用
$table[0]['userid']
如果您只想查询用户ID更改,请按以下方式查询:
$query = mysqli_query( $connection,"select userid from register where password='$log_in_password' AND username='$log_in_username'");
$table = mysqli_fetch_all($query,MYSQLI_ASSOC);
$ table的结果将是:
array (size=1)
0 =>
array (size=1)
'userid' => string '7' (length=1)
$ table也将是一个数组,要访问用户ID,您必须再次使用
$table[0]['userid']