[Normaltic's 취업반 과제] 게시판

2024. 4. 27. 19:07정보보안 및 해킹/Normaltic's 취업반 과제

index.php - 게시판의 카테고리에는 각각 musical, play, concert가 있고, 각 버튼을 클릭했을 때 어떤 DB의 카테고리 목록을 불러올 것인지 판단

<?php

[생략]

require_once ('get_category_list.php');

[생략]

    <form action="" method="POST">
    <div class="repo-category repo-category-btn-header">
      <button class="category-btn category-btn-indigo" name="getmusical" value="musicalcategory">Musical</button>
      <button class="category-btn category-btn-indigo" name="getplay" value="playcategory"> Play</button>
      <button class="category-btn category-btn-indigo" name="getconcert" value="concertcategory">Concert</button>
      </div>
      <div class="message_board_text">
      <?php
      if (isset($_POST['getmusical'])) {
        get_lists_of_category('Musical');
      }
      if (isset($_POST['getplay'])) {
        get_lists_of_category('Play');
      }
      if (isset($_POST['getconcert'])) {
        get_lists_of_category('Concert');
      }
      ?>
      </div>
    </form>
</body>
</html>

get_category_list.php - 각 버튼이 클릭 되었을 때 어떤 카테고리가 선책되었는지 파악하고 해당 DB에 맞는 카테고리 목록을 불러와 텍스트로 보여 줌

<?php
require_once('connect_db.php');
?>

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  <link
    href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
    rel="stylesheet">

  <link rel="stylesheet" href="style.css" />
  <link rel="stylesheet" href="font.css" />
  <title>Rame's Category</title>
</head>
<body class="header">
  <div class="info">
    
<?php
function get_lists_of_category($category)
{
  $table_name = "category_table";
  $sql_query = "SELECT * FROM $table_name WHERE `category` = '$category'";

  $sql_res =  mysqli_query(connect_db(), $sql_query);
  if ($sql_res) {
    for($i = 0; $i < mysqli_num_rows($sql_res); $i++)
    {
      
    $sql_row = mysqli_fetch_array($sql_res);
    echo $sql_row['name'];
    echo "<br>";
    }
  } else {
     echo "QUERY FAILED <br>";
  }
}
?>
</div>
</body>
</html>