php - 使用mysql从特定用户生成带有php的html树

标签 php html mysql sql

我想根据下表生成一棵树: TBLPROJECTS Id Name mainprojectid(这是parentid,默认为0,除非它是另一个项目的一部分)

TBLUSERPROJECTS 用户项目 ID 用户 ID 项目 ID

TBLUSERS id 名称

我现在有以下代码:

require_once 'php/connectie.php';
    if (isset($_SESSION['klantid'])){
    $klantid = $_SESSION['klantid'];
    function categoryParentChildTree($parent = 0, $spacing = '', $category_tree_array = '') {
        global $connectie;
        global $klantid;
        $parent = $connectie->real_escape_string($parent);
        if (!is_array($category_tree_array))
            $category_tree_array = array();

        $sqlCategory = "SELECT id,name,mainprojectid FROM projects WHERE mainprojectid = $parent ORDER BY id ASC";
        $resCategory=$connectie->query($sqlCategory);

        if ($resCategory->num_rows > 0) {
            while($rowCategories = $resCategory->fetch_assoc()) {
                $category_tree_array[] = array("id" => $rowCategories['id'], "name" => $spacing . $rowCategories['name']);
                $category_tree_array = categoryParentChildTree($rowCategories['id'], '    '.$spacing . '- ', $category_tree_array);
            }
        }
        return $category_tree_array;
    }

    $categoryList = categoryParentChildTree();
    foreach($categoryList as $key => $value){
        $name= $value['name'];
        $id= $value['id'];
        echo ' 
            <form action="" method="post">
                <p> '.$name.' <button  value="'.$id.'" name="addproject"  type="submit">+</button>  <button value="'.$id.'" name="checkproject" type="submit">Tijdregistratie</button>  </p>
            </form>  <br> ';
    }}

这会生成所有项目的树,但不是来自一个特定用户。当我尝试这个 SQL 时:

SELECT id,name,mainprojectid FROM userproject JOIN projects ON projects.id = userproject.project_id WHERE user_id = 3 

它只是进入了一个无限循环...所以我现在有点卡住了。

最佳答案

尝试左连接

SELECT id,name,mainprojectid FROM userproject left JOIN projects ON   projects.id = userproject.project_id WHERE user_id = 3

关于php - 使用mysql从特定用户生成带有php的html树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58260336/

相关文章:

html - 有没有办法让按钮组在 Bootstrap 中具有类似网格系统的属性?

c++ - 我如何在 C++ 中使用 mysql?

mysql - MySQL 中的 INSERT INTO 语句

php - php 中的加密和解密不起作用

php - 除了基本的商店功能外,还需要一个 wordpress 购物车插件来满足以下要求。有什么好的建议吗?

php - 如何从多维 PHP 数组中获取单个值

html - 如何禁用 Bootstrap 3 折叠导航菜单 css

css - 定位DIV的正确方法?

PHP 通知 : undefined offset 381 and 382 with in while loop

MySQL 在同一张表上更新后触发