cookie가 적용이 잘 안되네요..ㅠㅠ 정보
PHP cookie가 적용이 잘 안되네요..ㅠㅠ
본문
로그인 파일에서 아이디/비번을 입력하면
업데이트 파일에서
==========================================
$pw = md5($passwprd);
$tmp = $user_id."//".$pw;
$tmp = $user_id."//".$pw;
setcookie("munhwa",$tmp,-1,"/");
==========================================
이런식으로 비번을 암호화 하고, 쿠키로 구웠습니다.
lib파일에서..
==========================================
function member_info(){
global $connect, $HTTP_COOKIE_VARS;
$tmp = $HTTP_COOKIE_VARS["munhwa"];
$temp = explode("//", $tmp);
global $connect, $HTTP_COOKIE_VARS;
$tmp = $HTTP_COOKIE_VARS["munhwa"];
$temp = explode("//", $tmp);
$query = " select * from mun_board_member where user_id = '$temp[0]' ";
$result = mysql_query($query, $connect);
$data = mysql_fetch_array($result);
$result = mysql_query($query, $connect);
$data = mysql_fetch_array($result);
return $data;
}
==========================================
이렇게 함수를 만들고..
인덱스 화면에서
==========================================
<?
$member = member_info();
echo $member[user_id];
?>
$member = member_info();
echo $member[user_id];
?>
==========================================
이렇게 적용을 했는데... 아이디 정보가 출력이 안되네요..ㅠㅠ
뭐가 잘못된걸까요?ㅠㅠ
추천
2
2
댓글 3개

자답~~
==================================================
드디어 해결됐네요~~
저도 이것때문에 고생하다가.. 여기저기 웹서핑으로 찾아보고, 프로그래머한테 물어보니..
HTTP_COOKIE_VARS를 모두 _COOKIE로 바꿔서 해 보라고 하더라구요..
_cookie는 슈퍼전역변수로서 http_cookie_vars처럼 global을 쓰지 않아도 사용이 가능하다고 하더라구요..
또 한가지 방법은..
php.ini파일 정보를 보면
register_long_arrays 가 Off 로 되어있을겁니다.
이것을 on으로 바꿔주면 된다네요..이것은 웹서핑을 통해서 본 것이고,, 저도 적용을 안해봐서 모르겠네요..
암튼 해결되서 무진장 기쁘고 다음으로 넘어가렵니다.~~
저같은 분 계실까봐서 늦게라도 덧글 남깁니다.
==================================================
드디어 해결됐네요~~
저도 이것때문에 고생하다가.. 여기저기 웹서핑으로 찾아보고, 프로그래머한테 물어보니..
HTTP_COOKIE_VARS를 모두 _COOKIE로 바꿔서 해 보라고 하더라구요..
_cookie는 슈퍼전역변수로서 http_cookie_vars처럼 global을 쓰지 않아도 사용이 가능하다고 하더라구요..
또 한가지 방법은..
php.ini파일 정보를 보면
register_long_arrays 가 Off 로 되어있을겁니다.
이것을 on으로 바꿔주면 된다네요..이것은 웹서핑을 통해서 본 것이고,, 저도 적용을 안해봐서 모르겠네요..
암튼 해결되서 무진장 기쁘고 다음으로 넘어가렵니다.~~
저같은 분 계실까봐서 늦게라도 덧글 남깁니다.
해결되셨다니 다행입니다.
register_long_arrays = OFF; 로 되어있는 경우
$_GET, $_POST, $_COOKIE 를 사용해야 가능하고요,
만약 register_long_arrays = ON; 으로 되어 있는 경우는
global $HTTP_COOKIE_VARS;
$tmp = $HTTP_COOKIE_VARS['munhwa']; 이렇게 폐기예정된
구닥다리 변수를 사용하나
$tmp = $_COOKIE['munhwa'];
이렇게 사용하나 결과는 같습니다.
아마 php.ini 에서 OFF로 되어 있었던 모양입니다.
덕분에 저도 하나 배웠네요 ㅎㅎㅎ
register_long_arrays = OFF; 로 되어있는 경우
$_GET, $_POST, $_COOKIE 를 사용해야 가능하고요,
만약 register_long_arrays = ON; 으로 되어 있는 경우는
global $HTTP_COOKIE_VARS;
$tmp = $HTTP_COOKIE_VARS['munhwa']; 이렇게 폐기예정된
구닥다리 변수를 사용하나
$tmp = $_COOKIE['munhwa'];
이렇게 사용하나 결과는 같습니다.
아마 php.ini 에서 OFF로 되어 있었던 모양입니다.
덕분에 저도 하나 배웠네요 ㅎㅎㅎ

씁쓸한 케이스 중 하나.
http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=360093
http://php.net/manual/en/function.setcookie.php - 가장 먼저 읽어봐야 할 내용
PHP 4.2 (2002-04-22) register_globals = Off
http://php.net/ChangeLog-4.php#4.2.0
http://php.net/manual/en/ini.core.php#ini.register-long-arrays
Warning - This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0.
http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=360093
http://php.net/manual/en/function.setcookie.php - 가장 먼저 읽어봐야 할 내용
PHP 4.2 (2002-04-22) register_globals = Off
http://php.net/ChangeLog-4.php#4.2.0
http://php.net/manual/en/ini.core.php#ini.register-long-arrays
Warning - This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0.