DB 테이블에 데이터 저장에 대한 문의 올립니다.
안녕하세요..
스크랩 테이블에 ms_success, cupon_no, wr_name 이라는 필드를 추가하고,
게시판의 view.skin.php 화일에서 입력된
$cupon_number, $write_name 값들을 출력 하면 정상적으로 출력이 됩니다.
제대로 출력되는 변수 값을
scrap_popin_update.php 화일 에서
아래처럼 쿼리문을 작성했는데,
$sql = " insert into {$g5['scrap_table']}
set mb_id = '{$member['mb_id']}',
bo_table = '$bo_table',
wr_id = '$wr_id',
ms_datetime = '".G5_TIME_YMDHIS."',
ms_success = 0,
cupon_no = '$cupon_number',
wr_name = '$write_name' ";
sql_query($sql);
새로 만든 필드들의 값이 저장이 안되네요..(기존 필드값인 mb_id, bo_table, wr_id, ms_datetime 값들은 저장이 됩니다.)
view.skin.php 화일 내부에서
global $cupon_number, $write_name; 을 선언해도 저장이 않되네요. ㅠㅠ
왜 그럴까요? 고수님들의 조언 구합니다.
감사합니다.
답변 3개
$scrap_href <--여기서 지정하는 화일(scrap_popin.php)로 값을 전달하지 않는데
scrap_popin_update.php에 값이 전달 될 리가 없습니다
버튼을 누르지 않고 view.skin.php 화일만 열어도 저장이 되어버립니다.. 그래서 하는 수 없이 <-- 이 방법이 간단한 방법입니다
버튼을 누르면 실행 되도록 view스킨에서 쿼리문에 조건 넣기---
if($wk=='cp'){
$write_name = $member[mb_name];
$sql=~~~
sql_query($sql);
}
아래처럼 form에 wk = cp 넣기
추가 되어야할 기능은 한번 버튼을 누르면 다음부터는 버튼이 보이지않게 하거나 쿼리문이 실행 되지않게 하는 것(여분필드 wr_1에 기록하기)
답변에 대한 댓글 2개
1. skin/member/basic/scrap_popin.skin.php 에서 form에 아래처럼 input box를 만들어 넣기
2. 자바스크립트로 view스킨에 입력된 값을 끌어오기
1.
<form name="f_scrap_popin"~~ <---이 폼에다 추가
<input type='hidden' name='coupon_number' value=''>
<input type='hidden' name=write_name' value=''>
2.
하단에 자바스크립트 추가(여기서 폼은 뷰페이지에서 쿠폰넘버 입력하는 폼이름 입니다)
<script>
document.f_scrap_popin.coupon_number.value = opener.document.폼.coupon_number.value;
document.f_scrap_popin.write_name.value = opener.document.폼.write_name.value;
</script>
write_name 은 위와 같이 입력할 필요없이 scrap_popin_update.php에서 $member[mb_name]이 입력 되도록하면 될텐데요??
댓글을 작성하려면 로그인이 필요합니다.
빈값으로 나온다는 것은 넘어가지 않았다는 거죠. 그러니 저장이 안되는 것이고
view.skin.php 의 스크랩을 누르는 버튼의 소스에 cupon_number 와 write_name 값이 누락되었을껍니다.
다시 확인해보세요
답변에 대한 댓글 1개
$sql = " insert into {$g5['scrap_table']}
set mb_id = '{$member['mb_id']}',
bo_table = '$bo_table',
wr_id = '$wr_id',
ms_datetime = '".G5_TIME_YMDHIS."',
ms_success = 0,
cupon_no = '$cupon_number',
wr_name = '$write_name' ";
} ?>
<button href="<?php echo $scrap_href;?>" target="_blank" class="btn btn-blue btn-lg" style="width:100%;" onclick="<?php sql_query($sql); echo($scrap_href) ? "win_scrap('".$scrap_href."');" : "alert('로그인이 필요한 서비스입니다.')"; ?>"> 지금 혜택받기 </button>
view.skin.php 화일에서 위와같이 하면 db에는 제대로 저장이 되는데, 버튼을 누르지 않고 view.skin.php 화일만 열어도 저장이 되어버립니다.. 그래서 하는 수 없이
변수들을 global 로 선언을하고 , scrap_popin_update.php 에서 처리하도록 하고 싶은데 전달이 되지 않네요..
댓글을 작성하려면 로그인이 필요합니다.
scrap_popin_update.php 화일 에서
sql_query($sql); 아래쪽에
echo "sql = ". $sql ," ";echo "cupon_number = ". $cupon_number ," ";
echo "write_name = ". $write_name ." ";
exit;
이렇게 추가해서 실행해보세요.
값이 넘어가는지...
답변에 대한 댓글 1개
cupon_number =
write_name =
이렇게 출력되네요...
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
$scrap_href 에 넘어가는 파라메터들이 어디에서 선언되어있는지 알려주실 수 있나요?
view.skin.php 화일에서 버튼을 눌러 처리하는 것 보다는 scrap 화일쪽에서 처리 되었으면 하는데, 어떻게 view 에서의 변수값을 scrap 쪽으로 넘겨줄 수 있는지 감이 안옵니다..