【问题标题】:MYSQLI query to get one single result [duplicate]MYSQLI查询以获得一个结果[重复]
【发布时间】:2013-10-09 03:49:27
【问题描述】:

我只需要从 mysql 数据库中获取用户名为 X 的成员的 id。 这只能通过while循环来完成还是有其他方法可以解决这个问题?

我的想法是这样的:

$id = mysqli_query($con,'SELECT id FROM membrs WHERE username = '$username' LIMIT 1)

谢谢,

【问题讨论】:

    标签: php mysql mysqli get


    【解决方案1】:

    你可以使用:

    mysqli_fetch_array();
    
    // For Instance
    
    $id_get = mysqli_query($con, "SELECT id FROM membrs WHERE username='$username' LIMIT 1");
    
    $id = mysqli_fetch_array($id_get);
    
    echo $id['id']; // This will echo the ID of that user
    
    // What I use is the following for my site:
    
    $user_get = mysqli_query($con, "SELECT * FROM members WHERE username='$username'");
    
    $user = mysqli_fetch_array($user);
    
    echo $user['username']; // This will echo the Username
    
    echo $user['fname']; // This will echo their first name (I used this for a dashboard)
    

    【讨论】:

    • 为什么要投反对票?只是出于好奇
    • 我没有投反对票,但可能是因为您使用的是$id = mysqli_fetch_array($id);,它可能应该是$show_id = mysqli_fetch_array($id);,然后是echo $show_id['id'];——我说“可能”。看来您只会重置$id
    • 我通常不会那样做。我会更新答案。
    • 现在,我们等待 OP 进行测试/决定。
    • 这些天我很少给出答案,因为我正在学习 MySQL/PDO(现在 3 个月)并且在目前为止的时间里做得相当好。只有当我对这个主题 100% 确定/有信心时,我才会提交一些东西。否则,当我有 75% 的把握时,我会放入 cmets ;-)
    【解决方案2】:

    没有while循环我们可以通过下面的代码来实现,如果你选择了超过1条记录,你需要循环它

    $row = mysqli_fetch_array($id);
    echo $row['id'];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 2017-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多