如何在PHP中使用数组数据进行查询以获取其他数据

如何在PHP中使用数组数据进行查询以获取其他数据,php,mysql,arrays,database,Php,Mysql,Arrays,Database,下面是我的PHP代码: $checkProject1Column = "SELECT * FROM tbl_studentchoice WHERE Project1 = '1'"; $resultProject1Column = mysqli_query($conn, $checkProject1Column); while($row = mysqli_fetch_assoc($resultProject1Column)) { //Create an

下面是我的PHP代码:

$checkProject1Column = "SELECT * FROM tbl_studentchoice WHERE Project1 = '1'";
$resultProject1Column = mysqli_query($conn, $checkProject1Column);       
    while($row = mysqli_fetch_assoc($resultProject1Column)) {
            //Create an array of students
            $array[] = ['studentid' => $row['studentid']];
    }  
    //check marks database
    $checkmarks = "SELECT studentid,marks FROM tbl_marks";
    $checkResult = mysqli_query($conn, $checkmarks);
    if ($checkResult->num_rows >= 0){
        while($row1 = mysqli_fetch_assoc($checkResult)){
            //Create an array of students
            $array1[] = [
                'marks' => $row1['marks'],
                'studentid' => $row1['studentid']
                ];
            }
        print_r($array);
        print_r($array1);
所以我有两个数据库表
tbl\U学生选择
tbl\U分数
。 我在
Project1
列中创建了一个学生数组,其值为1。这就是我的tbl_学生选择的样子:

现在我有了一系列的studentid。我想从另一个表(
tbl_marks
)中获取这些学生的分数,该表如下所示:

Array ( 
    [0] => Array ( 
        [studentid] => c12558111 
        [marks] => 50
    ) 
    [1] => Array ( 
        [studentid] => c12558112 
        [marks] => 60
    ) 
)

并使用
Project1
值1及其标记创建一个仅包含
studentid
的新数组。基本上我想创建一个如下的数组:

Array ( 
    [0] => Array ( 
        [studentid] => c12558111 
        [marks] => 50
    ) 
    [1] => Array ( 
        [studentid] => c12558112 
        [marks] => 60
    ) 
)

为什么使用两种不同的查询?? 您应该只编写一个这样的查询

select s.*,m.marks
  from tbl_studentchoice s, tbl_marks m
  where s.studentid = m.studentid
   and  Project1 = '1'
完整代码

$query= "select s.*,m.marks
  from tbl_studentchoice s, tbl_marks m
  where s.studentid = m.studentid
   and  Project1 = '1'";
$result= mysqli_query($conn, $query);       
while($row = mysqli_fetch_assoc($result)) {

  echo("<br/>Student ID = ".$row['studentid']);
  echo("<br/>Student marks = ".$row['marks']);
}
$query=“选择s.*,m.marks
来自tbl_学生选择s,tbl_分数m
其中s.studentid=m.studentid
Project1='1';
$result=mysqli\u查询($conn,$query);
while($row=mysqli\u fetch\u assoc($result)){
echo(“
学生ID=”.$row['studentid'); echo(“
学生分数=”.$row['marks'); }
为什么要使用两种不同的查询?? 您应该只编写一个这样的查询

select s.*,m.marks
  from tbl_studentchoice s, tbl_marks m
  where s.studentid = m.studentid
   and  Project1 = '1'
完整代码

$query= "select s.*,m.marks
  from tbl_studentchoice s, tbl_marks m
  where s.studentid = m.studentid
   and  Project1 = '1'";
$result= mysqli_query($conn, $query);       
while($row = mysqli_fetch_assoc($result)) {

  echo("<br/>Student ID = ".$row['studentid']);
  echo("<br/>Student marks = ".$row['marks']);
}
$query=“选择s.*,m.marks
来自tbl_学生选择s,tbl_分数m
其中s.studentid=m.studentid
Project1='1';
$result=mysqli\u查询($conn,$query);
while($row=mysqli\u fetch\u assoc($result)){
echo(“
学生ID=”.$row['studentid'); echo(“
学生分数=”.$row['marks'); }
重复的
$resultProject1Column=mysqli\u查询($conn,$checkProject1Column)是否有原因?实际上不允许我编辑代码重复的
$resultProject1Column=mysqli\u查询($conn,$checkProject1Column)是否有原因?事实上不,让我编辑我的代码。非常感谢。我仍然没有足够的PHP经验,所以我不知道你可以做这样的查询。你能给我解释一下这个问题吗?我不完全明白。我已经完成并创建了阵列及其优点。我只是想进一步了解一下这个查询,它就像一个内部连接,通过某种条件连接两个表,在您的问题中,有两个表有一个公共列studentid,所以这个查询将合并studentid相同的两个表的数据,非常感谢。我仍然没有足够的PHP经验,所以我不知道你可以做这样的查询。你能给我解释一下这个问题吗?我不完全明白。我已经完成并创建了阵列及其优点。我只是想进一步了解一下这个查询,它就像一个内部连接,通过某种条件连接两个表,在您的问题中,有两个表有一个公共列,它是studentid,所以这个查询将合并studentid相同的两个表的数据