묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
mysql_fetch_array와 @mysql_fetch_aray의 차이점?
2002.06.08 11:14
최근게시물 뽑기를 연구하다 이상한걸 발견했습니다.
$result=mysql_query("select * from zetyx_board_$id order by no desc limit $num");
while($data=mysql_fetch_array($result))
라고 하면 계속 mysql_fetch_array에서 에러가 납니다
그런데, 아래와 같이 mysql_fetch_array 앞에 @를 붙이면 에러가 없어집니다.
$result=mysql_query("select * from zetyx_board_$id order by no desc limit $num");
while($data=@mysql_fetch_array($result))
제로님의 zboard.php 소스를 보고 찾았지요.
근데 설명이 없더군요.
게시판 여러곳에서 같은질문이 있지만 시원한 설명이 없어서 올립니다.
아시는분 계시면 속시원한 답변 부탁드려요...
$result=mysql_query("select * from zetyx_board_$id order by no desc limit $num");
while($data=mysql_fetch_array($result))
라고 하면 계속 mysql_fetch_array에서 에러가 납니다
그런데, 아래와 같이 mysql_fetch_array 앞에 @를 붙이면 에러가 없어집니다.
$result=mysql_query("select * from zetyx_board_$id order by no desc limit $num");
while($data=@mysql_fetch_array($result))
제로님의 zboard.php 소스를 보고 찾았지요.
근데 설명이 없더군요.
게시판 여러곳에서 같은질문이 있지만 시원한 설명이 없어서 올립니다.
아시는분 계시면 속시원한 답변 부탁드려요...
댓글 2
-
이호한
2002.06.08 11:48
-
박윤엽
2002.06.08 11:59
검색은 했는데 원하는 답이 아니어서 또 올렸습니다. 죄송.
위의 에러는 에러 메시지만 출력안되는게 아니고 에러시는 결과물이 안나오고 에러만
나오는데, @를 붙이면 에러도 없고 결과가 출력됩니다.
그래서 질문을 올린겁니다.
다시한번 답변 부탁드려요.
@은 단순히 함수의 error나 warning을 안 보이게 하는 역할을 합니다.
화면에 에러가 출력되지 않는다고 에러가 없는 것은 아니라는 걸 명심하세요.
db와 관계되는 함수에 보통 @을 많이 붙입니다.
이는 db에러로 인해 혹시라도 db의 정보가 누출된 염려가 있기 때문이죠...
님의 경우 에러가 있는 상황이니 에러를 고치시기 바랍니다.
에러 없이 다 만들어지면 그때 @을 붙이세요. 혹시 모를 노출에 대비해...