몽상실현개발주의

[생활코딩] 15.3 데이터를 HTML에 표현하기 -1 본문

Language/php

[생활코딩] 15.3 데이터를 HTML에 표현하기 -1

migrationArc 2021. 5. 21. 00:37

[생활코딩] 15.3 데이터를 HTML에 표현하기 -1

생활코딩 php 강좌

15. PHP와 MYSQL의 연동

15.3 데이터를 HTML에 표현하기 -1

  • Database 에 저장되어 있는 정보는 Array 에 담겨서 제공 됨

 

<?php
$mysql = mysqli_connect(hostname, username, password);
mysqli_select_db($mysql, 'opentutorials');
$list_result = mysqli_query($mysql, 'SELECT * FROM topic');

if(!empty($_GET['id'])) {
    $topic_result = mysqli_query($mysql, 'SELECT * FROM topic WHERE id = '.mysqli_real_escape_string($mysql, $_GET['id']));
    $topic = mysqli_fetch_array($topic_result);
}?>

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <style type="text/css">
      ...
    </style>
  </head>
  
  <body id="body">
    <div>
      <nav>
        <ul>
          <?php
          while($row = mysqli_fetch_array($list_result)) {
            echo "<li><a href=\"?id={$row['id']}\">".htmlspecialchars($row['title'])."</a></li>";
          }
          ?>
        </ul>
        <ul>
          <li><a href="input.php">추가</a></li>
        </ul>
      </nav>
      <article>
        <?php
        if(!empty($topic)){
        ?>
        <h2><?=htmlspecialchars($topic['title'])?></h2>
        <div class="description">
          <?=htmlspecialchars($topic['description'])?>
        </div>
        <div>
          <a href="modify.php?id=<?=$topic['id']?>">수정</a>
          <form method="POST" action="process.php?mode=delete">
            <input type="hidden" name="id" value="<?=$topic['id']?>" />
            <input type="submit" value="삭제" />
          </form>
        </div>
        <?php
        }
        ?>
      </article>
    </div>
  </body>
</html>

 

<?php
$mysql = mysqli_connect(hostname, username, password);
mysqli_select_db($mysql, 'opentutorials');
$list_result = mysqli_query($mysql, 'SELECT * FROM topic');

if(!empty($_GET['id'])) {
    $topic_result = mysqli_query($mysql, 'SELECT * FROM topic WHERE id = '.mysqli_real_escape_string($mysql, $_GET['id']));
    $topic = mysqli_fetch_array($topic_result);
}?>

 

$list_result = mysqli_query($mysql, 'SELECT * FROM topic');
  • $list_result = mysqli_query($mysql, 'SELECT * FROM topic')
    • Database 에 저장된 정보를 받아 옴
    • SELECT * FROM topic
      • topic Table에 저장된 모든 Data

 

<body>
  ...
  <nav>
    <?php
    while($row = mysqli_fetch_array($list_result)) {
      echo "<li><a href=\"?id={$row['id']}\">".htmlspecialchars($row['title'])."</a></li>";
    }
    ?>
  ...
  </nav>
</body>
  • while($row = mysqli_fetch_array($list_result)){}
    • Data 가 존재 하지 않을 때 까지, Data 를 Array type 으로 반환하고 $list_result 에서 제거
    • $list_result 에 Data 가 존재 하지 않으면, false return
  • 받아온 Data 들을 Array 로 가공하여, title <a> tag 로 나열 해줌
  • <a href= \ "?id={$row['id']}">
    • 이동할 url 을 data 의 id 값을 받아와서 만듬
    • 상대경로 : 현재 url + "\ ?id=id"

 


이 글의 모든 사진과 내용의 출처는 생활코딩에 있음을 알려드립니다.

http://www.inflearn.com/course/%EC%83%9D%ED%99%9C%EC%BD%94%EB%94%A9-php-%EA%B0%95%EC%A2%8C/lecture/230?tab=note

 

생활코딩 - PHP 기본 A 부터 Z 까지 - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

 

Comments