CI 묻고 답하기

제목 form_button 사용 시..
글쓴이 큰용 작성시각 2011/11/24 19:46:18
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 16197   RSS
$login = array(
            'name' => 'checkbit',
    'type' => 'submit',
            'value' => 'Login',
            'content' => 'Login'
            );

$write = array(
            'name' => 'checkbit',
            'type' => 'submit',
            'value' => 'write',
            'content' => '회원등록'
            );

echo form_button($login);
echo form_button($write)
상기와 같이 form_button을 array로 해서 같은 컨트롤러 함수에서 value 값으로 분기를
하려고 하는데.... 컨트롤러에서 값을 찍어보면 content 값이 그대로 찍히네요.
원래 value 값이 찍혀야 하는거 아닌가요??? 원인을 못찼겠어서 이렇게 글 올려봅니다. ㅠ.ㅠ
 다음글 for문 오류좀 봐주세요 (3)
 이전글 my sql password() (4)

댓글

큰용 / 2011/11/24 19:47:22 / 추천 0
참고로 CI 버젼은 2.1.0 입니다.
변종원(웅파) / 2011/11/24 20:02:46 / 추천 0
 매뉴얼을 흘려 보셨나 봅니다.

$data = array(
    'name' => 'button',
    'id' => 'button',
    'value' => 'true',
    'type' => 'reset',
    'content' => 'Reset'
);

echo form_button($data);

// Would produce:
<button name="button" id="button" value="true" type="reset">Reset</button>
큰용 / 2011/11/25 10:40:30 / 추천 0
집에서는 정상적으로 value 값이 찍히네요.

그런데 사무실 컴에서는 content 값이 찍혀요. ㅎㅎ

집에도 윈도우7 이고 사무실도 윈도우7 인데.. 역시 IE 버젼이고

브라우져하고 상관이 있는것 같아요.

열심히 관련자료 찾아봐야 될 것 같습니다. ㅠ.ㅠ
변종원(웅파) / 2011/11/25 10:53:38 / 추천 0
 echo form_button($login); 

위 라인 설정값 보면 value와 contents가 동일한데 어떻게 판단을 하시는지요?

집에서던지 사무실에서던지 <button value="Login">Login</button> 라는 형태로 나올건데요.

질문 자체가 이해가 안됩니다. 

큰용 / 2011/11/25 11:09:54 / 추천 0
죄송합니다. 오타가 있었습니다. value는 login content는 Login 입니다.

그래서 컨트롤러에서 echo $this->post->input('checkbit'); 로 값을 찍어보면

사무실에서는 Login 이
집에서는 login 이 찍힙니다.

php는 예전부터 흝어만 보다가 드디어 CI를 통해 사이트 하나 만들다보니...

type=button 에 대한 이해가 부족한건지... 좀더 php 메뉴얼을 봐야할듯..

원래 의도는 post로 값을 전송해서 switch 문으로 분기를 하여 로그인과 회원가입을 처리할려고

하다보니... 2.0.3에서 같은 코드로 잘 되던게... Code를 좀더 심플하게 만들어보고자 2.1.0으로 올려서

다시 코딩하는 과정에서 생겨난 문제여서 질문 드려 봤습니다.
변종원(웅파) / 2011/11/25 13:23:20 / 추천 0
이제 이해가 되네요. ^^

버튼의 value에 따라 컨트롤러에서 분기해서 처리하려고 하는데 안됐다는 말씀이네요.

$this->post->input('checkbit') <- 이 넘은 버튼의 값을 가져오는게 아니라 
input태그의 값을 가져오는 겁니다. 

버튼의 값을 처리하시려면 jquery로 해당 id의 attr을 가져오는 형태로 쓰시면 됩니다.

<button id="write" value="aa"> 라면 jquery에서 다음과 같이 이용할 수 있습니다.

var values = $("#write").attr("value");