doumaikuang4202 2016-02-06 15:43
浏览 311
已采纳

不包含查询值的数组

I am trying to get an array to contain two values; SkillID and Description. However when I print the value of the array it is only showing Description. How can I get an array to show both??

$skillresult = $con->query("SELECT userskills.`SkillID`, `Description`, `Experience` FROM `User` INNER JOIN `userskills` ON User.`UserId` = userskills.`UserId` LEFT OUTER JOIN `Skills` ON userskills.`SkillID` = Skills.`SkillID` WHERE user.`UserID` ='$User'") 
    or die(mysqli_error($con));

    $skills_array = array();

    while($r=mysqli_fetch_array($skillresult))
    {
    if (!isset($skills_array[$r['SkillID']]))
    {
        $skills_array[$r['SkillID']] = array();
    }
    $skills_array[$r['SkillID']][] = $r['Description'];
}

Print Output:

Array ( [0] => Array ( [0] => Java ) [1] => Array ( [0] => Unix ) )

Description 'Java' should have the SkillID of '1' and Unix '6'.

  • 写回答

1条回答 默认 最新

  • doushi6947 2016-02-07 20:22
    关注

    Is the $skills_array array really supposed to be 2-dimensional?
    Isn't this what you really want?

    Array ( 1 => Java, 6 => Unix)
    

    In which case, this could work:

    while($r=mysqli_fetch_array($skillresult))
    {
        $skills_array[$r['SkillID']] = $r['Description'];
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器