PHP 통해 정보를 파일에 저장할 수 있었습니다.
하지만, 여러가지 정보를 저장하기를 원하고
그 정보를 바탕으로 정보를 추출하고, 정렬하고
검색의 기능을 구현하기로 원하게 되었으며
이를 구현하기 위해서 PHP 와 MYSQL를 같이 사용해야 했습니다.
따라서 앞으로 PHP 와 MYSQL 을
같이 사용하는 방법에 대해서 말씀드리겠습니다.
< PHP MYSQL mysqli_fetch_array >
mysql에서 가져온 정보를 php로 다룰 줄 알아야 합니다.
하지만 mysql과 .php는 다른 언어이기에
약간의 작업을 필요로 합니다.
mysqli_fetch : mysql을 가져온다
mysqli_fetch_array : mysql을 array 형태로 가져온다.
mysqli_fetch_array( select,);
안에 들어가 있는 정보
1번째 행만을 다루고 있음.
값들이 두번씩 반복됨( 1개는 수, 1개는 column명 )
-> 데이터 가져오는 방법이 숫자나 column 2가지 방식으로 가져올 수도 있음
cf> column으로 가져오면 연관 배열임.
수로 가져오면 배열임.
<하나의 행에 대하여 가져오는 방식>
echo '<h1>'.$row['title'].'</h1>';
echo $row['description'];
따라서 위와 같은 코드로 지정하여 출력이 가능합니다.
<여러 행에 대하여 가져오는 방식>
echo '<h1>'.$row['title'].'</h1>';
echo $row['description'];
을 반복하면 다음 행에 대한 데이터가 출력됩니다.
행이 끝나면 다시 echo문을 사용하여도 값이 나오지 않습니다. (NULL)
하지만 이는 재활용성이 좋지 않습니다.
자세히 보시면 반복적인 코드를 사용하고 있는 것을 확인하실 수 있습니다..
while($row = mysqli_fetch_array($result)) {
echo '<h2>'.$row['title'].'</h2>';
echo $row['description'];
}
이는 PHP에서는 NULL과 FALSE를 같게 보기 때문입니다.
따라서 PHP 상에서 모든 항을 가져올 수 있으며
다음 행이 없을시에는 PHP 상에서 반복문을 중단하는 것을 알 수 있습니다.
< PHP MYSQL 읽어오기 >
$sql = "SELECT * FROM topic";
$result = mysqli_query($conn, $sql)
;$list = '';
while($row = mysqli_fetch_array($result))
{ $list = $list."<li><a href=\"index.php?id={$row['id']}\">{$row['title']}</a></li>";}
$sql = "SELECT * FROM topic";
topic이라는 테이블에 담긴 값들을 모두 표현시킵니다.
$result = mysqli_query($conn, $sql);
mysql 서버에 query하는 문장입니다.
opentutorials에 접속한 뒤 topic 테이블에 담긴 값들을
모두 표현하라는 뜻입니다.
var_dump($result->num_rows);
mysqli_query의 출력값은 배열의 형태입니다.
그 중 열, 행의 길이 등 여러가지 mysqli_query 문에 대한 정보가 들어있는데
행에 대한 수를 출력하는 코드입니다.
댓글