帐户限制(PHP-SESSION)

时间:2019-05-07 08:00:38

标签: php mysql session

我正在做一个ToDoList网站,这只是一种练习,对于我即将进行的工作面试,我仍然是一个初学者,所以请放心。因此,我已经在myphpadmin中创建了数据库,但是我想我需要删除该数据库并使用其他数据库进行更改。因此,我的交易是,我拥有一个完整的注册登录系统,以及用于用户的完整数据库。一切运行正常,我还创建了一个Jquery / Ajax完整的ToDoList创建器,您可以在其中编写名称和文本并将其发布,所以这是我的问题,我需要有2个数据库,一个是我为用户创建的,另一个是我创建的ToDoList,我想这样做,以便每个用户只能看到他们的待办事项列表。

现在,无论我将使用哪个用户,我都会看到所有待办事项列表,我需要以某种方式将其限制为已登录的用户。

我将向您展示我的代码。

用于ToDoList发布的HTML代码:

                <div class="wrapper">
                <?php echo $comments; ?>
                <form class="comment_form">
                    <div>
                        <label for="name">Name:</label>
                        <input type="text" name="name" id="name">
                    </div>
                    <div>
                        <label for="comment">Comment:</label>
                        <textarea name="comment" id="comment" cols="30" rows="5"></textarea>
                    </div>
                        <button type="button" id="submit_btn">POST</button>
                        <button type="button" id="update_btn" style="display: none;">UPDATE</button>
                </form>
            </div>  

当前ToDoList数据库与PHP的数据库连接(id,名称,注释):

  <?php 
   $conn = mysqli_connect('localhost', 'root', '', 'complete');
   if (!$conn) {
    die('Connection failed ' . mysqli_error($conn));
   }
   if (isset($_POST['save'])) {
     $name = $_POST['name'];
 $comment = $_POST['comment'];
 $sql = "INSERT INTO comments (name, comment) VALUES ('{$name}', '{$comment}')";
if (mysqli_query($conn, $sql)) {
  $id = mysqli_insert_id($conn);
  $saved_comment = '<div class="comment_box">
        <span class="delete" data-id="' . $id . '" >delete</span>
        <span class="edit" data-id="' . $id . '">edit</span>
        <div class="display_name">'. $name .'</div>
        <div class="comment_text">'. $comment .'</div>
    </div>';
  echo $saved_comment;
}else {
  echo "Error: ". mysqli_error($conn);
}
exit();
    }
    if (isset($_GET['delete'])) {
$id = $_GET['id'];
$sql = "DELETE FROM comments WHERE id=" . $id;
mysqli_query($conn, $sql);
exit();
    }
    if (isset($_POST['update'])) {
$id = $_POST['id'];
$name = $_POST['name'];
$comment = $_POST['comment'];
$sql = "UPDATE comments SET name='{$name}', comment='{$comment}' WHERE id=".$id;
if (mysqli_query($conn, $sql)) {
    $id = mysqli_insert_id($conn);
    $saved_comment = '<div class="comment_box">
      <span class="delete" data-id="' . $id . '" >delete</span>
      <span class="edit" data-id="' . $id . '">edit</span>
      <div class="display_name">'. $name .'</div>
      <div class="comment_text">'. $comment .'</div>
  </div>';
  echo $saved_comment;
}else {
  echo "Error: ". mysqli_error($conn);
}
exit();
    }

    $sql = "SELECT * FROM comments";
    $result = mysqli_query($conn, $sql);
    $comments = '<div id="display_area">'; 
    while ($row = mysqli_fetch_array($result)) {
$comments .= '<div class="comment_box">
      <span class="delete" data-id="' . $row['id'] . '">delete</span>
      <span class="edit" data-id="' . $row['id'] . '">edit</span>
      <div class="display_name">'. $row['name'] .'</div>
      <div class="comment_text">'. $row['comment'] .'</div>
  </div>';
    }
    $comments .= '</div>';
    ?>

这是“帐户” 表的图像,该表是用户的数据库:

enter image description here

*我确实有第二个数据库要发布,但是它没有用,只有ID,Name和Comment行。

再一次,我需要以某种方式限制其他用户以查看其他人正在发布的内容,用户应该只看到他们的帖子。

谢谢。

0 个答案:

没有答案