首页 > 解决方案 > 用户特定的待办事项列表,任务不显示

问题描述

我正在尝试制作一个特定于用户的待办事项列表,这意味着它会根据您的用户 ID 显示您的独特任务。该应用程序可以工作,但在提交时它不会将任务分配给当前用户。当我提交任务时,待办事项列表保持为空,但是当我检查数据库时,任务已提交。

这里的问题是提交任务时用户 ID 保持为 0,因此它不会在“我的任务”中显示,因为 ID 与查看它的用户不同。我的用户 ID 是 2,任务应该在提交时将任务分配给用户 ID 2 或任何其他 ID,具体取决于提交用户。

(我对编码还很陌生,所以我的代码可能不够干净)

--

<?php 
    $errors = "";

    $db = mysqli_connect("localhost", "root", "", "certanet");

    if (isset($_POST['submit'])) {
        if (empty($_POST['task'])) {
            $errors = "";
        }else{
            $task = $_POST['task'];
            $sql = "INSERT INTO tasks (task) VALUES ('$task')";
            mysqli_query($db, $sql);
            header('location: dashboard.php');
        }
  } 
  
  if (isset($_GET['del_task'])) {
    $id = $_GET['del_task'];
  
    mysqli_query($db, "DELETE FROM tasks WHERE id=".$id);
    header('location: dashboard.php');
  }

  ?>

-- 应用程序本身:

    <form method="post" action="dashboard.php" class="input_form">
<?php if (isset($errors)) { ?>
    <p><?php echo $errors; ?></p>
<?php } ?>
        <input type="text" name="task" class="task_input">
        <button type="submit" name="submit">Toevoegen</button>
    </form>
  <table>

    <tbody id="todo">
        <?php 
        $tasks = mysqli_query($db, "SELECT * FROM tasks WHERE idUsers = '".$_SESSION["userId"]."' ORDER BY id DESC");

        $i = 1; while ($row = mysqli_fetch_array($tasks)) { ?>
            <tr>
                <td> <?php echo $i; ?> </td>
                <td class="task"> <?php echo $row['task']; ?> </td>
                <td class="delete"> 
                    <a href="dashboard.php?del_task=<?php echo $row['id'] ?>">x</a> 
                </td>
            </tr>
        <?php $i++; } ?>    
    </tbody>
</table>

标签: phphtmlmysqlmysqli

解决方案


推荐阅读