1

这就是我想要做的:

 $allwinnersarra = array(26809,26805,24279,4839,20939,17678,4999,17745,1);

 $results_query = mysql_query("SELECT username FROM table_users WHERE userid IN('".join("','", $allwinnersarra)."')"); 

 while ($row = mysql_fetch_array($results_query)) {
        $usernamesFound.= $row['username'];
 }

 die($usernamesFound);

有一组 id 号码,我想要他们的用户名,在我自己的想法中,我的方法是正确的,但结果不是。

输出只有第一个用户名,不显示其他用户名

4

2 回答 2

3

尝试这个:

$allwinnersarra = array(26809,26805,24279,4839,20939,17678,4999,17745,1);
$allwinnersarra = implode( ',', $allwinnersarra );

$sql = "SELECT username FROM table_users WHERE userid IN 
          (" . mysql_real_escape_string( $allwinnersarra ) . ");";

希望能帮助到你...

于 2012-04-04T09:00:21.880 回答
2
  1. $usernamesFound 甚至是一个字符串吗?请在循环上方声明它。
  2. 在变量名和 .=-operator 之间添加一个空格
  3. 我建议你把用户名放在一个数组中

    $users = 数组();

    while($row = mysql_fetch_array($results_query)) { $users[] = $row['username']; }

  4. 也请使用内爆而不是加入。
于 2012-04-04T08:54:52.270 回答