Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP+;mysqli:将数组推入数组_Php_Arrays_Mysqli - Fatal编程技术网

PHP+;mysqli:将数组推入数组

PHP+;mysqli:将数组推入数组,php,arrays,mysqli,Php,Arrays,Mysqli,我基本上需要创建如下数组: 我的数据库中有两个不同的表。一个用于项目,一个用于任务。每个任务都有其所属项目id的列。我需要创建一个多维数组,在该数组中,我查看与项目ID相关的每个任务ID,并将该任务附加到正确项目的数组中 我担心我走错了方向。我已经试着让这项工作进行了两天了(在这方面非常新)。非常感谢您的帮助!提前谢谢 到目前为止,我有这个 $projects = $mysqli->query("SELECT projectID, projectName FROM projects WHE

我基本上需要创建如下数组:

我的数据库中有两个不同的表。一个用于项目,一个用于任务。每个任务都有其所属项目id的列。我需要创建一个多维数组,在该数组中,我查看与项目ID相关的每个任务ID,并将该任务附加到正确项目的数组中

我担心我走错了方向。我已经试着让这项工作进行了两天了(在这方面非常新)。非常感谢您的帮助!提前谢谢

到目前为止,我有这个

$projects = $mysqli->query("SELECT projectID, projectName FROM projects WHERE userID = '".$userID."'");
while (($row = $projects->fetch_assoc()) !== null) {
print_r($row);

$projectID = $row['projectID'];
$tasks = $mysqli->query("SELECT * FROM tasks WHERE projectID = '".$projectID."'");
while (($row = $tasks->fetch_assoc()) !== null) {
    print_r($row);
}

联接更适合这种情况,但如果项目中没有名为
tasks
的字段,则可以这样将它们栓接在一起

$p = array();

$projects = $mysqli->query("SELECT projectID, projectName FROM projects WHERE userID = '".$userID."'");
while (($row = $projects->fetch_assoc()) !== null) {
    $p[$row['projectID']] = $row;
}

$projectID = $row['projectID'];
$tasks = $mysqli->query("SELECT * FROM tasks WHERE projectID = '".$projectID."'");
while (($row = $tasks->fetch_assoc()) !== null) {
    $p[$row['projectID']]['tasks'][] = $row;
}

print_r($p);

您将对SQL注入敞开大门。请了解如何使用参数化查询(最好是PDO模块)来保护您的web应用程序。有示例可以帮助您入门。请将示例代码直接粘贴到问题中,而不是发布到外部服务(如pastebin)。外部代码可以在任何时候消失,并且没有版本控制,就像SO问题一样。因此,未来的读者可能无法看到外部代码,因此这个问题将是无用的或没有多大意义。StackOverflow是关于其他人的未来参考,也是关于你今天得到答案的问题。谢谢!所以我成功了(虽然必须将$tasks放在$projects的while循环中),但是我如何才能使该数组看起来像这样呢?