Q&A

CMS/프레임워크 Rhymix 1.9
개발 언어 PHP 7.2

어떤 모듈을 만들고 있습니다.

 

해당 모듈에 연락처를 기입할 수 있도록 했어요.

 

연락처의 경우 원래는 XE처럼 3칸식의 input 바에 전화번호를 입력하도록 하여 저장하게 하고 싶었는데 사실 불편할 것 같아서 전화번호 입력을 input TEXT 타입으로 만들었습니다.

 

(393227F8-DD0B-474A-8631-77970AC92856).png.jpg 

이건 원래 XE에서 연락처 기입할때 입력폼을 지원하는 모습입니다.

 

 

(FC9B0A62-A28D-4AE4-9187-8840522DFE3E).png.jpg

 

하지만 저는 위의 사진처럼 하나의 input을 통해서 넣어뒀거든요.

 

이때 문제가 되는 부분이 

 

form 을 post 메소드로 input으로 만들어둔 데이터를 모두 전송하였고, 해당 액션값에서 다음과 같이 처리하였습니다.

 

$obj = Context::getRequestVars();

$args = new stdClass();

$args->phone_number = $obj->phone_number;

 

으로 했을때 번호의 값이 01032488939 으로 저장되는 것이 아니라 1032488939 으로 저장되었습니다.

 

혹시나 싶어서 strVal($obj->phone_number); 으로 시도해보았지만 역시나 같았습니다.

 

이 경우 앞의 0을 누락하지 않도록 하는 방법 있을까요?

 

이 부분에 대해서 경험 있으시면 답변 해주시면 감사하겠습니다.

 

 

제가 의심하는 부분은 아마 전화번호를 input text 값으로 넘겼지만 숫자만 넘어왓기 때문에Context::에서 처리할때 숫자만 잇는것 같으니 이 값을 "문자열"이 아니라 "정수"로 생각하고 넘겨준 것으로 보여집니다.. 제가 필요한 부분은 문자열로 넘겨줘야 할텐데 말이죠 ㅠㅠ

람보 Lv. 17

댓글 11

  • 2019.01.30 05:45 #1160304
    $args->phone_number = $_POST[phone_number];
    도 같은 결과가 나오나요?
  • 2019.01.30 05:48 #1160308
    넵 ㅎ
  • 2019.01.30 05:54 #1160311
    db에 입력된 것도 맨앞에 0이 빠져있나요?
  • 2019.01.30 05:54 #1160315
    저장하는 테이블의 유형이 int거나 varchar가 아닌것은 아닌가요?
  • 2019.01.30 06:02 #1160324
    아 테이블이 number 타입이네요. varchar으로 바꿔야겠..;;
  • 2019.01.30 06:05 #1160331
    큰 문제가 아니라서 다행이네요 :3`
  • 2019.01.30 06:11 #1160335
    어차피.. 라이믹스용으로 만드니깐 class 에서 간단하게 타입 바꾸도록 해주고 전화번호 검사를 까다롭게 해서 전화번호만 넘어도록 해야겟;;
  • 2019.01.30 06:12 #1160338
    ㅋㅋ
    난또 뭐가 있나 했네요...ㅎㅎ
  • 2019.01.30 06:13 #1160342
    ㅎㅎ답변감사합니다.
  • 2019.01.30 06:20 #1160345
    sprintf('%03d', $v);
    ltrim($str, '0');
    요며칠 간단한 애드온 하나 만들면서 앞에 '0'을 땟다붙였다 하느라고 애를 썼었습니다.
    그때문에 더 눈에 보였나봅니다...ㅎㅎㅎㅎ
  • 2019.01.30 06:21 #1160352
    곧 팁게에 전화번호 관련 부분처리하는것도 올려볼께요 :)