묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
// 전체 division 구함
function total_division() {
global $connect, $t_division, $id;
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id"));
return $temp[0];
}
// MySQL 데이타 베이스에 접근
function dbconn() {
global $connect, $config_dir, $autologin, $HTTP_COOKIE_VARS, $_dbconn_is_included;
if($_dbconn_is_included) return;
$_dbconn_is_included = true;
$f=@file($config_dir."config.php") or Error("config.php파일이 없습니다.
DB설정을 먼저 하십시요","install.php");
for($i=1;$i<=4;$i++) $f[$i]=trim(str_replace("n","",$f[$i]));
if(!$connect) $connect = @mysql_connect($f[1],$f[2],$f[3]) or Error("DB 접속시 에러가 발생했습니다");
@mysql_select_db($f[4], $connect) or Error("DB Select 에러가 발생했습니다","");
return $connect;
}
이렇게 되어있는데요 이상한게 하나 있어서요..
다른게 아니라
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id")); 에서 $connect 를 넣어줘야 하는거 아닌가요?
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id,$connect")); 이렇게요..
전 $connect 를 안넣고 하면
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ~~
이렇게 에러가 나거든요?
어떻게 제로보드님들께서 만든 경우는 $connect 를 사용하지 않고도 에러가 안나는것인지 알수가 없네요..
답변좀 부탁드릴께요.. 고맙습니다 ^^*
php 레퍼런스에..
int mysql_query ( string query [, int link_identifier])
mysql_query()는 현재 서버에서 동작중인 데이터베이스로부터 특정 link identifier로 질의를 전송한다. 만일, link_identifier를 설정하지 않으면 가장 최근에 열려진 link를 사용하게 된다. 열려진 link가 없으면, 옵션 인자 없이 실행된 mysql_connect() 함수처럼 link를 생성하여 사용한다.
참고: 질의에 쓰이는 문자열 마지막에 세미콜론(;)를 붙이면 안된다.
mysql_query() 함수는 질의 성공 여부에 따라 TRUE(0이 아닌값) 또는 FALSE를 반환한다. 서버로부터 실행된 질의가 실행되고 그 질의 내용에 문제가 없어야만, TRUE값을 반환한다. 이 반환 값은 질의에 해당하는 열 개수 등과는 관련이 없다.
다음 질의는 틀린 문장이기 때문에 mysql_query()는 실패하며, FALSE값을 반환한다:
이렇게 되어있는데요..
대체 모르겠습니다..
mysql_query() 함수 사용법을 제가 너무 모르나봐요.....
2004.03.01 18:26
// 전체 division 구함
function total_division() {
global $connect, $t_division, $id;
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id"));
return $temp[0];
}
// MySQL 데이타 베이스에 접근
function dbconn() {
global $connect, $config_dir, $autologin, $HTTP_COOKIE_VARS, $_dbconn_is_included;
if($_dbconn_is_included) return;
$_dbconn_is_included = true;
$f=@file($config_dir."config.php") or Error("config.php파일이 없습니다.
DB설정을 먼저 하십시요","install.php");
for($i=1;$i<=4;$i++) $f[$i]=trim(str_replace("n","",$f[$i]));
if(!$connect) $connect = @mysql_connect($f[1],$f[2],$f[3]) or Error("DB 접속시 에러가 발생했습니다");
@mysql_select_db($f[4], $connect) or Error("DB Select 에러가 발생했습니다","");
return $connect;
}
이렇게 되어있는데요 이상한게 하나 있어서요..
다른게 아니라
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id")); 에서 $connect 를 넣어줘야 하는거 아닌가요?
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id,$connect")); 이렇게요..
전 $connect 를 안넣고 하면
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ~~
이렇게 에러가 나거든요?
어떻게 제로보드님들께서 만든 경우는 $connect 를 사용하지 않고도 에러가 안나는것인지 알수가 없네요..
답변좀 부탁드릴께요.. 고맙습니다 ^^*
php 레퍼런스에..
int mysql_query ( string query [, int link_identifier])
mysql_query()는 현재 서버에서 동작중인 데이터베이스로부터 특정 link identifier로 질의를 전송한다. 만일, link_identifier를 설정하지 않으면 가장 최근에 열려진 link를 사용하게 된다. 열려진 link가 없으면, 옵션 인자 없이 실행된 mysql_connect() 함수처럼 link를 생성하여 사용한다.
참고: 질의에 쓰이는 문자열 마지막에 세미콜론(;)를 붙이면 안된다.
mysql_query() 함수는 질의 성공 여부에 따라 TRUE(0이 아닌값) 또는 FALSE를 반환한다. 서버로부터 실행된 질의가 실행되고 그 질의 내용에 문제가 없어야만, TRUE값을 반환한다. 이 반환 값은 질의에 해당하는 열 개수 등과는 관련이 없다.
다음 질의는 틀린 문장이기 때문에 mysql_query()는 실패하며, FALSE값을 반환한다:
이렇게 되어있는데요..
대체 모르겠습니다..
$temp=mysql_fetch_array(mysql_query("select max(division) from $t_division"."_$id",$connect));
이렇게 되어야겠지요..
한편 보시다시피 mysql_fetch_array()의 에러이지 mysql_query()가 아닙니다. 저 에러는 주로 쿼리 결과가 없는데 mysql_fetch_array()를 사용할 경우 나오게 됩니다. 보통 @mysql_fetch_array()로 에러를 죽여줍니다.