테스트 사이트 - 개발 중인 베타 버전입니다

전체게시판 관리의 여분필드 cf_2 를 이용하는 방법 도움 부탁합니다 채택완료

전체 관리자 페이지의 여분필드 cf_2 를 배열을 이용여 체크박스를 해보고자 아래와 같이 했는데 저장이 되질 않네요..다른 곳에두 설정을 해야하나요..

아래는 adm/config_form.php 에서 여분필드 cf_2 를 이용하기 위해 추가한 내용입니다.

</p>

<p><?php $cf_bs = explode(",", $config['cf_2']);{?>

  <input type="checkbox" id="cf_bs[0]" name="$cf_bs[0]" value="yes"<?php echo ($cf_bs[0] == "yes") ? " checked" : "";?>> yes

 <?php } ?></p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 6개

아르키어드님 감사합니다. 

config_form.php 에 아래와 같이 넣고

</p>

<p><?php } ?>

<?php  $cf_bs = explode(",",$config['cf_1']);     {

$code_name = "cf_bs"; ?>

<?php    $header = array("wide","middle");

for($i=0;$i<=1;$i++){?>

<input type="radio" name="<?php echo $code_name?>[0]" value="<?php echo $header[$i]?>"<?php echo (${$code_name}['0'] == "{$header[$i]}") ? " checked" : "";?>> <?php echo $header[$i]?>

                <?php }?>

<?php }?></p>

<p>

 

config_form_update.php 에 아래와 같이 넣었더니 저장이 되었습니다

</p>

<p>$cf_1 = "$cf_bs[0]";

sql_query(" update {$g5['config_table']} set cf_1 = '$cf_1'");</p>

<p>

덕분에 여러가지 생각을 하게 되었고 많은 도움이 되었습니다..~인터넷 검색도 많이 해봤구여...

감사합니다 

 

페이지에서 불러올땐 아래와 같이하면 되구여

 

</p>

<p><?php echo $bo_bs[0];?></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

위 내용은 member_form.php에서 작성한거구 그때는 추가로 member 테이블에 여분필드 생성해서 했구여...

member_form_update.php 에서 아래와 같이 업데이트 구문을 넣어서 했었어요.

</p>

<p>member_form.php 이구여</p>

<p><?php

        $bg_total_02 = explode("-",$mb['mb_22']); // 메뉴바 전체 배경

        { // 메뉴바 전체 배경

        $code_name = "bg_total_02";

        ?></p>

<p><?php

 $color = array("gray","red","yellow","green","blue","indigo","purple","dark");

  for($i=0;$i<=7;$i++){

 ?>

<input type="radio" name="<?php echo $code_name?>[0]" value="<?php echo $color[$i]?>"<?php echo (${$code_name}['0'] == "{$color[$i]}") ? " checked" : "";?>> <?php echo $color[$i]?>

<?php }?></p>

<p> </p>

<p>member_form_update.php 내용이구요</p>

<p>$mb_22 = "$bg_total_02[0]-$bg_total_02[1]-$bg_total_02[2]-$bg_total_02[3]-$bg_total_02[4]-$bg_total_02[5]-$bg_total_02[6]-$bg_total_02[7]";</p>

<p>sql_query(" update {$g5['member_table']} set mb_22 = '$mb_22' where mb_id = '$mb_id' ");</p>

<p>

 

위에서 처럼해서 회원정보수정에서 작성하면 저장 되었었는데  이것을 config_form.php 에 응용해서 하려니 안되네요...

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

member_form_update.php에서 일단
[code]
// sql_query(" update {$g5['member_table']} set mb_22 = '$mb_22' where mb_id = '$mb_id' ");
// 이 부분에서 쿼리를 찍어보세요
echo update {$g5['member_table']} set mb_22 = '$mb_22' where mb_id = '$mb_id';
exit;
[/code]

댓글을 작성하려면 로그인이 필요합니다.

아래와 같이하면 어떤 문제가 있나요.. 추가필드가 안닌 기존 필드에서도 업데이트 쿼리문을 별도로 작성해야하나요..

여전히 저장이 안되서요

</p>

<p><?php

$cf_bs = explode("-",$config['cf_2']);     { 

$code_name = "cf_bs";

 ?>

 <?php

$color = array("gray","red","yellow","green","blue","indigo","purple","dark");

for($i=0;$i<=7;$i++){?>

<input type="radio" name="<?php echo $code_name?>[0]" value="<?php echo $color[$i]?>"<?php echo (${$code_name}['0'] == "{$color[$i]}") ? " checked" : "";?>> <?php echo $color[$i]?>

<?php }?>

<?php }?></p>

<p> </p>

<p> </p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

저 배열을 한대 묶어서 cf_2에 저장해주셨나요?

댓글을 작성하려면 로그인이 필요합니다.

https://sir.kr/bbs/profile.php?mb_id=naver_qn5hbmzs" onclick="return false;" rel="nofollow" target="_blank" title="아르키어드 자기소개">아르키어드 도데체 뭔이야기인 모르겠습니다~~죄송합니다~~
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

phpmyadmin 으로 들어가 봤는데 cf_2에는 아무것도 없습니다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

그렇다면 작성된 데이터가 없다는 거네요.
explode(",", $config['cf_2']); 이 부분이 ,를 기준으로 배열로 자른다는 explode 함수인데,
인풋의 네임값이 $cf_bs[0] 라서 안들어갑니다. cf_2[] 로 하신다고 해도 타입이 맞지 않아 들어가지 않으실겁니다.
일단 폼 안에
<input type='hidden' name='cf_2' id='cf_2' /> cf_2 여분필드에 넣을수 있는 인풋 폼을 만들어주시고,
서브밋 함수 안에 retrun true 직전에
var cf_2_value = [];
$('클래스').each(function() {
var _this = $(this);
var value = _this.value();
cf_2_value.push(value);
});
$('#cf_2').value(cf_2_value.join(','));
위 코드를 넣어주세요.

댓글을 작성하려면 로그인이 필요합니다.

업데이트 되는곳의 코드도 같이 수정해주셔야 할거같습니다.

아니면 cf_2 네임을 가진 인풋을 타입 hidden으로 넣고 서브밋 할때 액션하기 전에 배열로 가진 인풋들의 값을 배열로 만들어서 cf_2의 값으로 넣고 서브밋 하는방식도 있습니다.

</p>

<p>// 예제</p>

<p><input type='hidden' name='cf_2' id='cf_2' />

<?php</p>

<pre>
<code>$cf_bs = explode(",", $config['cf_2']);</code></pre>

<p><code>for ($i = 0; $i > count($cf_bs); $i++) { ?></code></p>

<pre>
<code><input type="checkbox" class="cf_2_value" id="cf_bs[<?php echo $i; ?>]" name="cf_bs[<?php echo $i; ?>]" value="yes"<?php echo ($cf_bs[0] == "yes") ? " checked" : "";?>></code></pre>

<p><code><?php</code>

}</p>

<p>?></p>

<p><script>

function 서브밋함수() {

  ....코드

  var cf_2_value = [];</p>

<p>  $('.<code>cf_2_value</code>').each(function() {

    var _this = $(this);

    var value = _this.value();

    cf_2_value.push(value);

  });

  $('#cf_2').value(cf_2_value.join(','));

}

</script>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

장문의 답변 감사합니다.. 제가 초보라 뭔지가 통모르겠내요..

현재는 값은 불러오는 것은 다음에 하구~~배열로 체크박스를 만들어 저장이 되면 그 저장된 값은 다음에 불러와 쓰려고 하는 중이거든요~~~
일단 저장하는 방법을 모르겠습니다만~~ 체크박스부분만 코드를 작성해두 체크박스가 출력되질 않네요
db에 저장이 어떻게 되어있나요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

전체 질문 목록

🐛 버그신고