쭈~~~~~~~욱 설명을 드릴께요
theme/test/skin/member/basic/register.skin.php
에서
<select name="mb_1" id="mb_member">
<option name="mb_1" value="3"<?php echo get_selected('1', $member['mb_1']); ?>>기업회원</option>
<option name="mb_1" value="2"<?php echo get_selected('2', $member['mb_2']); ?>>일반회원</option>
</select>
을 추가 하고
--------
bbs/register_form.php
post 로 넘긴값 받기 위해 추가
$mb_1 = trim($_POST['mb_1']);
하단부에
if 문의 들어가 있는 인클루드 를
include_once($member_skin_path.'/register_form.skin.php');
아랫쪽에 문구로 변경 했습니다.
if($mb_1 == '3') { // $_POST 로 받아온 값이 1(기업회원)일 경우
include_once($member_skin_path.'/register_form.skin.company.php'); // 기업 회원가입 페이지를 불러옴
}else if ($mb_1 == '2') { // $_POST 로 받아온 값이 2(일반회원)일 경우
include_once($member_skin_path.'/register_form.skin.php'); // 일반 회원가입 페이지를 불러옴
}
------
그리고
theme/test/skin/member/basic/register.form.skin.php -> 복사
theme/test/skin/member/basic/register.form.skin.company.php -> 생성
한후에 각 파일 상단 부분에
$mb_1 = trim($_POST['mb_1']);
<input name="mb_1" value="<?php echo $mb_1 ?>" type="hidden">
저걸 안하니까 값을 못받더라구요
그리고 받은것을 넘길려고 히든값으로 처리 했구요
---------
같은 폴더에
register_form_update.tail.skin.php 생성 시켜서
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if ($mb_1) {
sql_query(" update {$g5['member_table']} set mb_level = '$mb_1' where mb_id = '$mb_id' ");
}
?>
해서 mb_1 값으로 mb_level을 변경했습니다. (게시판을 찾아보고 한것임.)
회원 가입은 정상적으로 다 되었습니다.
DB 에도 mb_1 값과 mb_level 값이 동일 하게 잘 들어 갑니다.
정보수정 부분을 클릭하게 되면은 아무 페이지가 나오지 않아
theme/osmsosm/skin/member/basic/member_confirm.skin.php
페이지에 아래의 히든값을 추가를 하니
<input type="hidden" name="mb_1" value="<?php echo $member['mb_1'] ?>">
정보 수정 페이지가 나옵니다
그런데 여기서 정보 수정 버튼을 클릭하게 되면 정보가 수정되었습니다. 라는 경고창이 뜨고
또 여백이 나옵니다. 요럴때는 어떻게 해야하나요??ㅠㅠㅠㅠㅠㅠ
답변 3개 / 댓글 14개
그리고 register_form_update.php 파일은 안건드셨죠?
여기는 순정으로 놔두셔야합니다 어차피 앞서말씀하신 기능들이 여기에 영향이 끼치면안되거든요
메일이 안간다고하셨는데 여기부분에 메일전송이있습니다
이부분을 수정하신게 아닌가 생각되네요
답변에 대한 댓글 6개
제가 실수한 부분이 있었습니다.
register_form_skin.company.php 부분에 input을 포스트 값으로 넣고 수정을 안했더라구요 그냥 register_form_skin.php 만 수정을 해서 안나왔었습니다.
정말 감사합니다. 늦은시간 까지 봐주시고 정말 감사합니다. ㅋㅋㅋ
<?php echo $mb_1; ?>를 한번찍어보세요
여기에 값이 안나온다면...
register_form.php에서 설정이 뭔가 잘못되었다는거에요
<form>태그안에
<input name="mb_1" value="<?php echo $mb_1 ?>" type="hidden">
이 정상적으로 들어가있는지 다시한번확인해주시구요
bbs/register_form.php에서
$mb_1 = trim($_POST['mb_1']);는 당연히 $w==''에넣으셧겠죠? 안그러셨다면 이부분에 넣어주세요
수정부분에서 안뜨는건 당연합니다 수정부분에서는 $_POST['mb_1']가없어서 스킨을 못불러오니깐요
if($w=='u')에 값을하나 더추가해주어야합니다
$mb_1 = $member['mb_1'];
해주시면 스킨을 정상적으로 불러올수있을겁니다
답변에 대한 댓글 6개
상단에 추가했던
$mb_1 = trim($_POST['mb_1']);
요걸
if ($w == "") {
$mb_1 = trim($_POST['mb_1']);
이프문 바로 밑에 추가 했구요
그리고
else if ($w =='u'){
에 바로 밑에
$mb_1 = $member['mb_1'];
을 추가 하니 정보수정 을 클릭하면 제대로 뜹니다
그리고 비번을 입력하고 정보수정버튼을 클릭하면 다시 뜨는데요
다시 뜬 정보 수정 페이지에서 비번을 입력하고 정보수정 버튼을 클릭하면
여백이 뜹니다. 원래 정보수정은 한번만 되는건가요?? DB 에는 다시 mb_1 값이 없어 졌구요 원래 이렇게 되는게 정상인가요???
$mb_1 = trim($_POST['mb_1']); 때문에 그래요 이걸 지워주세요
member_confirm.skin.php 에 hidden 도 지우고
register.form.skin.php 스킨에 넣은 상단에 $mb_1 = trim($_POST['mb_1']);
요것도 지우고 다해봤는데도 증상이 똑같네요
제가 한 부분에서 뭔가 불필요 한것이나 잘못된 부분이 있는건가요??ㅠㅠ 슬프네요 정말ㅎㄷㄷ
include_once($member_skin_path.'/register_form.skin.company.php'); // 기업 회원가입 페이지를 불러옴
}else { // $_POST 로 받아온 값이 2(일반회원)일 경우
include_once($member_skin_path.'/register_form.skin.php'); // 일반 회원가입 페이지를 불러옴
}
일단 안뜨는것도 문제가있기때문에 else문에있는 조건은 삭제해주세요
디폴트는있어야하니깐요
register_form_update.tail.skin.php 은 회원가입시 때만 사용하시는거 아닌가요?
if ($mb_1 && $w=='') {
로 해보셔야 할것 같아요,
답변에 대한 댓글 2개
register_form_update.tail.skin.php 에
if ($mb_1) {
이거 대신에
if ($mb_1 && $w=='') {
요거로 수정 하시라는 말씀이신가요???
똑같이
회원 정보 수정
밑에 아무것도 나오지 않네요 ㅠㅠ
답변을 작성하려면 로그인이 필요합니다.
ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
보니까 말씀해 주신 부분에서 else 부분의 조건문을 지우니까 되네요 ㅠㅠㅠㅠㅠ
정말 감사합니다. 아 그리고 register_form_update.php 는 건드릴려고 하다가 이거 잘못건드리면 홀라당 날라 가겠다 싶어 그대로 놔뒀었습니다.
정말 감사합니다.ㅠㅠ 좋은 밤 되세요 ^^
정말 감사합니다.