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

배추베이직 name 속성값 코드에 작은따옴표 붙이면 에러나는 이유? 채택완료

sinbi 4년 전 조회 1,882

<input type=checkbox name=chk['cf_desc_len'] value=1>

 

\skin\board\miwit\mw.adm\mw.config.php 파일의 일부 코드인데,

배열 같아서 작은따옴표 붙였더니, php 7.2.10 환경에서 에러 나더라구요.

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

답변 3개

채택된 답변
+20 포인트

chk 배열 선언 전에 name 을 우선 따옴표 처리 해보세요.

name="chk['cf_desc_len']"

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

답변에 대한 댓글 1개

s
sinbi
4년 전
오래 전에 수정하면 메모해두었던 거라...실제 적용 해보긴 좀 그렇고....
애드프로 님이 말씀하시는 것이니, 믿음이 가네요. ㅎ 답변 감사합니다.

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

4년 전

input name="asdfg" <--이것 처럼 name을 따옴표로 감싸게 되어있죠

name='chk[a]' 처럼 해야하는데 name=chk['a'] 로 했으니 따옴표 위치가 틀린 것이지요

그러니 php에서는 $chk['a'] 처럼 첨자에 따옴표를 사용하지만 html태그에서 php처럼 하면 안되는 것이지요

javascript도 아니고 html 태그에서는 첨자인지 배열인지 이런 것을 구분하는 것은 아니지요

 

 

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

답변에 대한 댓글 3개

s
sinbi
4년 전
균이 님 설명 감사합니다.
그런데, 설명 문맥이 좀 이상해서 이해가 될둥 말둥 그래요. ^&^;;
아래 애들 OX와 어느 게 FM코드인지도 궁금합니다.

name='chk[a]' : (O) <--- 균이 님 방식.
name="chk['a']" : (O), (X) <--- 애드프로 님 방식.
name='chk["a"]' : (O), (X) (?)
name=chk[a] : : (O), (X) <---- 배추 님 방식.
균이
4년 전
서버에서 받는 것을 생각하면 되겠지요
세번째는 $chk["a"] 와 같은 형식이 되니 첨자표시 방법이 틀렸죠?
나머지는 모두 잘 작동 할 것입니다
FM이 있는지 모르겟으나 두번째가 가장 합당한 방식이 아닐까 생각됩니다
그런데 form에서 post하는 것은 굳이 2번째처럼 만들 필요가 있을까싶네요
저는 습관적으로 첫번째방식으로 합니다(name에 따옴표를 안하면 무언가 빠진 것 같아서 말이죠 ㅎㅎ)
s
sinbi
4년 전
덕분에 궁금증이 싹 다 풀렸습니다.
감사합니다. ( ^ ________ ~ ) ===b

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

4년 전

착각하신 듯 보이는데요.

배열 변수는 프로그래밍 언어 내에서 작동됩니다.

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

답변에 대한 댓글 1개

s
sinbi
4년 전
chk[a]
chk[b]
....
식으로 배열처럼 사용되는 것 같아 배열이라 표현은 했는데,
왜 따옴표가 붙으면 에러가 나는지가 궁금합니다.

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

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

로그인