Flower_kh

Mysql 정보 본문

PHP/그누보드

Mysql 정보

엄마밥좀줘 2018. 6. 1. 13:29
그누보드에서는 lib/common.lib.php에 MySQL의 정보를 가져오기 위한 몇가지 함수가 정의되어 있습니다.
 
1. 한줄의 정보를 가져올 때 - sql_fetch
 
   $row = sql_fetch(select * from $g4[member_table] where mb_id = '$mb_id' );
 
   위와 같이 1줄의 정보만을 가져올 때는, sql_fetch 함수를 쓰는 것이 좋습니다.
 
   그런데, 초기 개발단계에서는 SQL이 맞는지 틀리는지 헷갈릴 수 있기 때문에,
   사용하는 SQL을 출력해서, phpmyadmin에서 수행함으로써 확인해 보는게 필요 합니다.
 
   $sql = "select * from $g4[member_table] where mb_id = '$mb_id' ";  
   echo $sql;
   $row = sql_query($sql);
 
function sql_fetch($sql, $error=TRUE)
{
    $result = sql_query($sql, $error);
    $row = sql_fetch_array($result);
    return $row;
}
 
2. 여러줄의 정보를 가져올 때 - sql_query & sql_fetch_array
 
    $sql = "" select * from $g4[board_new_table] where mb_id='mb_id' ";
    $result = sql_query($sql);
    while ($row = sql_fetch_array($result) ) {
        ...
    }
 
    몇줄의 결과가 나올지 모를 때는,
    $sql_query를 해서 결과 SET을 가져온 다음에 결과를 하니씩 꺼내서 쓰는게 필요합니다.
    이때는 sql_fetch_array를 loop로 돌리는게 편합니다.
 
    그런데, while로 loop를 돌리지 않고 for로 loop를 돌리는 것도 가능 합니다.
    이것은 단순한 취향의 차이기도 하지만, $i (몇번째 index인지) 정보가 있고 없고의 차이기도 합니다.
    상황에 따라서, while 또는 for loop를 적당히 쓰면 됩니다.
 
    $sql = "" select * from $g4[board_new_table] where mb_id='mb_id' ";
    $result = sql_query($sql);
    for ($i=0; $row=sql_fetch_array($result); $i++) {
        ...
    }


Comments