폼 전송 잘 아시는 분좀 부탁 드립니다. 정보
폼 전송 잘 아시는 분좀 부탁 드립니다.
본문
폼 전송 잘 아시는 분좀 부탁드립니다.
버튼을 이미지 사용하기 위해서 type="image"
하고 src="$fbExtenPath/btn_submit.png" 이미지 주소를 추가 했습니다.
그런데 문제는 ie는 전송을 못 하고 , 파폭에서는 잘 됩니다.
문론 이미지를 사용 안하면 잘 됩니다.
어떤 차이가 있는지 아시는분좀 부탁드립니다.
나참 이런 경우는 ... 이거 아직도 해결이 안 나네요.......
<input type="submit" name="modifyMod" value="$form_change" />
<!--파폭은잘되나 ie에서 전송하지못하여 이미지 사용 못함
<input type="image" name="modifyMod" src="$fbExtenPath/btn_submit.png" value="$form_change"/>
-->
고맙습니다.
버튼을 이미지 사용하기 위해서 type="image"
하고 src="$fbExtenPath/btn_submit.png" 이미지 주소를 추가 했습니다.
그런데 문제는 ie는 전송을 못 하고 , 파폭에서는 잘 됩니다.
문론 이미지를 사용 안하면 잘 됩니다.
어떤 차이가 있는지 아시는분좀 부탁드립니다.
나참 이런 경우는 ... 이거 아직도 해결이 안 나네요.......
<input type="submit" name="modifyMod" value="$form_change" />
<!--파폭은잘되나 ie에서 전송하지못하여 이미지 사용 못함
<input type="image" name="modifyMod" src="$fbExtenPath/btn_submit.png" value="$form_change"/>
-->
고맙습니다.
추천
0
0
댓글 16개

ie가 문제인데 ie사용자가 많으니 무시할 수도 없고......아놔 검색해 봐도 해결방법이 없네요.

onClick="submit()" 이렇게 안될까요?

안됩니다.
고맙습니다.
고맙습니다.
그냥 기본적으로 $form_change 를 <? ?>로 안감싸주셨는거 아닌가요;;;
저거 echo 안에 쓰고계시나용;;;;;
submit 를 이미지로 바꾸실땐, name과 value는 빼주세요 그럼 잘될듯
저거 echo 안에 쓰고계시나용;;;;;
submit 를 이미지로 바꾸실땐, name과 value는 빼주세요 그럼 잘될듯

히어덕 문법으로 되어있고 전체가 echo입니다.
name과 value는 빼고 안됩니다.
고맙습니다.
name과 value는 빼고 안됩니다.
고맙습니다.

onclick="폼선택자.submit();"
선택자는 많이 아실겁니다. getElementById 같은 것들
선택자는 많이 아실겁니다. getElementById 같은 것들

자바 스크립트는 사용하지 않습니다.
순수한 php
고맙습니다.
순수한 php
고맙습니다.
음.. 그런경우라면...
한경우가 있습니다.
폼태그를 한페이지안에 중첩으로 사용된경우에 상위의 폼태그의 종료태그가
없으면 그런 차이가 생기기도해요;;;
PS : 문제가 되지않으시다면 잠깐 소스좀 보고싶습니다^^;
한경우가 있습니다.
폼태그를 한페이지안에 중첩으로 사용된경우에 상위의 폼태그의 종료태그가
없으면 그런 차이가 생기기도해요;;;
PS : 문제가 되지않으시다면 잠깐 소스좀 보고싶습니다^^;

글쓰기, 답변, 수정, 한 페이지에 각각의 함수로 되어 있습니다.
중첩으로 사용하고 종료 함수종료 return; 되어 있습니다.
특별한 종료 태그가 있나요?
중첩으로 사용하고 종료 함수종료 return; 되어 있습니다.
특별한 종료 태그가 있나요?

if($wgUser->isAllowed('admModify')){ // 관리자 권한 이라면 통과
$Sh_password = $this->fbPassword;
}
else { // 사용자 권한
$Sh_password = substr(sha1($password), 0, 20); //입력받은 비번 해쉬 통과후 20개만 추출하여 비교한다.
}
if($Sh_password==$pass){ // $pass 디비함호 암호화저장된것 비교
// 방문자의 이름, 비밀번호쌍이 맞는 정보였을 때.
$out=<<<ENDFORM
<div id="FunBoard">
<h2>$hl</h2>
<form name="FunBoard" method="post" action="" enctype="multipart/form-data">
<input type="hidden" name="fbSubmit" value="fbSubmit" />
<input type="hidden" name="fbReplyto" value="$this->fbReplyto" />
<input type="hidden" name="modifyMod" value="$this->modifyMod" />
<table width="100%" border="0">
ENDFORM;
if ($this->fbCat){ // 분류가 있다면
if ($wantCategory) {
$out.=<<<ENDFORM
<tr>
<td valign="top" nowrap>$fbCategory_msg</td>
<td>
<select name='fbCat' size='1'>
ENDFORM;
$fbCategory_msg=$this->text('fbCategory_msg');
$Search_cat=$this->text('Search_cat');
$rowcat = explode(",", $Search_cat );
for ($j=0; $j<count($rowcat); $j++) {
if (trim($rowcat[$j]))
$out.=<<<ENDFORM
<option value='$rowcat[$j]'>$rowcat[$j]</option>
ENDFORM;
}
$out.=<<<ENDFORM
</select>
</td>
</tr>
<tr>
ENDFORM;
}
}
$out.=<<<ENDFORM
<td valign="top">$form_subject:</td>
<td><input type="text" name="fbSubject" size="50" maxlength="250" value="$this->fbSubject" /></td>
ENDFORM;
if ($wantCaptcha) {
$out.=<<<ENDFORM
<td valign="top" rowspan="4" align="right" width="30%">
<br /><a title="$captcha_desc_alt">$form_captcha</a>: <input type="text" name="fbCaptcha" size="8" value=""/>
<br /><img title="$captcha_desc_alt" src="$cap"></img>
</td>
ENDFORM;
} else {
$out.=<<<ENDFORM
<td rowspan="4"></td>
ENDFORM;
}
$out.=<<<ENDFORM
</tr><tr>
<td valign="top" nowrap>$form_password:</td>
<td><input type="password" name="fbPassword" size="35" maxlength="50" value="$this->fbPassword"/></td>
</tr><tr>
<td valign="top" nowrap>$form_username:</td>
<td><input type="text" name="fbUserName" size="20" maxlength="20" value="$this->fbUserName" $readonly />($Message_form)</td>
</tr><tr>
<td valign="top">$form_nick_name:</td>
<td><input type="text" name="fbNick" size="20" maxlength="15" value="$this->fbNick" /></td>
</tr><tr>
<td valign="top">$form_email:</td>
<td><input type="text" name="fbEmail" size="40" maxlength="100" value="$this->fbEmail" /></td>
</tr><tr>
<td valign="top">$form_homepage:</td>
<td><input type="text" name="fbHomepage" size="40" value="$this->fbHomepage" /></td>
</tr>
ENDFORM;
if ($option) {
$out.=<<<ENDFORM
<tr>
<td valign="top">$form_option:</td>
<td>$option</td>
</tr>
ENDFORM;
}
$out.=<<<ENDFORM
<tr>
<td valign="top">$form_content:</td>
<td colspan="2"><textarea name="fbContent" cols="40" rows="10" style="width:100%; word-break:break-all;">$this->fbContent</textarea></td>
</tr><tr>
<td valign="top">$form_Tag:</td>
<td nowrap><input type="text" name="fbTag" size="30" maxlength="40" value="$this->fbTag" />$form_Tag_Message</td>
</tr><tr>
<td valign="top">$form_ip</td>
<td><input type="text" name="fbIP" size="20" value="$this->fbIP" $readonly />($Message_form)</td>
</tr><tr>
<td colspan="2">
/////문제가 되는부분///////////////////////////////////////////////////////////////
<input type="submit" name="modifyMod" title="$form_change" value="$form_change" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/><!--파폭은잘되나 ie에서 전송하지못하여 이미지 사용 못함 <input type="image" name="modifyMod" src="$fbExtenPath/btn_submit.png" value="$form_change"/> -->
/////문제가 되는부분 ///////////////////////////////////////////////////////////////
<input type="reset" title="$form_reset" value="$form_reset" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/>
<input type="submit" name="modifyMod" title="$form_delete" value="$form_delete" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/></td>
<td height="60" align="right" nowrap><a href="$lists_link"><img title="$btn_lists" src="$fbExtenPath/btn_list.png" align="absmiddle"/></a></td></tr>
</table>
</form>
</div>
ENDFORM;
}
else {
// 방문자의 이름, 비밀번호쌍이 틀렸을 때.
$out.=<<<ENDFORM
<h4>$Message_pass2</h4>
<form name="FunBoard" method="post" action="">
<input name="modifyMod" type="image" src="$fbExtenPath/btn_reset.png" title="$form_back" border="0" value="$form_back" /><p><BR />
</p>
</form>
<div style="font-size: 100%; text-align: right;"><a href="$lists_link"><img title="$btn_lists" src="$fbExtenPath/btn_list.png" /></a></div>
ENDFORM;
}
$Sh_password = $this->fbPassword;
}
else { // 사용자 권한
$Sh_password = substr(sha1($password), 0, 20); //입력받은 비번 해쉬 통과후 20개만 추출하여 비교한다.
}
if($Sh_password==$pass){ // $pass 디비함호 암호화저장된것 비교
// 방문자의 이름, 비밀번호쌍이 맞는 정보였을 때.
$out=<<<ENDFORM
<div id="FunBoard">
<h2>$hl</h2>
<form name="FunBoard" method="post" action="" enctype="multipart/form-data">
<input type="hidden" name="fbSubmit" value="fbSubmit" />
<input type="hidden" name="fbReplyto" value="$this->fbReplyto" />
<input type="hidden" name="modifyMod" value="$this->modifyMod" />
<table width="100%" border="0">
ENDFORM;
if ($this->fbCat){ // 분류가 있다면
if ($wantCategory) {
$out.=<<<ENDFORM
<tr>
<td valign="top" nowrap>$fbCategory_msg</td>
<td>
<select name='fbCat' size='1'>
ENDFORM;
$fbCategory_msg=$this->text('fbCategory_msg');
$Search_cat=$this->text('Search_cat');
$rowcat = explode(",", $Search_cat );
for ($j=0; $j<count($rowcat); $j++) {
if (trim($rowcat[$j]))
$out.=<<<ENDFORM
<option value='$rowcat[$j]'>$rowcat[$j]</option>
ENDFORM;
}
$out.=<<<ENDFORM
</select>
</td>
</tr>
<tr>
ENDFORM;
}
}
$out.=<<<ENDFORM
<td valign="top">$form_subject:</td>
<td><input type="text" name="fbSubject" size="50" maxlength="250" value="$this->fbSubject" /></td>
ENDFORM;
if ($wantCaptcha) {
$out.=<<<ENDFORM
<td valign="top" rowspan="4" align="right" width="30%">
<br /><a title="$captcha_desc_alt">$form_captcha</a>: <input type="text" name="fbCaptcha" size="8" value=""/>
<br /><img title="$captcha_desc_alt" src="$cap"></img>
</td>
ENDFORM;
} else {
$out.=<<<ENDFORM
<td rowspan="4"></td>
ENDFORM;
}
$out.=<<<ENDFORM
</tr><tr>
<td valign="top" nowrap>$form_password:</td>
<td><input type="password" name="fbPassword" size="35" maxlength="50" value="$this->fbPassword"/></td>
</tr><tr>
<td valign="top" nowrap>$form_username:</td>
<td><input type="text" name="fbUserName" size="20" maxlength="20" value="$this->fbUserName" $readonly />($Message_form)</td>
</tr><tr>
<td valign="top">$form_nick_name:</td>
<td><input type="text" name="fbNick" size="20" maxlength="15" value="$this->fbNick" /></td>
</tr><tr>
<td valign="top">$form_email:</td>
<td><input type="text" name="fbEmail" size="40" maxlength="100" value="$this->fbEmail" /></td>
</tr><tr>
<td valign="top">$form_homepage:</td>
<td><input type="text" name="fbHomepage" size="40" value="$this->fbHomepage" /></td>
</tr>
ENDFORM;
if ($option) {
$out.=<<<ENDFORM
<tr>
<td valign="top">$form_option:</td>
<td>$option</td>
</tr>
ENDFORM;
}
$out.=<<<ENDFORM
<tr>
<td valign="top">$form_content:</td>
<td colspan="2"><textarea name="fbContent" cols="40" rows="10" style="width:100%; word-break:break-all;">$this->fbContent</textarea></td>
</tr><tr>
<td valign="top">$form_Tag:</td>
<td nowrap><input type="text" name="fbTag" size="30" maxlength="40" value="$this->fbTag" />$form_Tag_Message</td>
</tr><tr>
<td valign="top">$form_ip</td>
<td><input type="text" name="fbIP" size="20" value="$this->fbIP" $readonly />($Message_form)</td>
</tr><tr>
<td colspan="2">
/////문제가 되는부분///////////////////////////////////////////////////////////////
<input type="submit" name="modifyMod" title="$form_change" value="$form_change" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/><!--파폭은잘되나 ie에서 전송하지못하여 이미지 사용 못함 <input type="image" name="modifyMod" src="$fbExtenPath/btn_submit.png" value="$form_change"/> -->
/////문제가 되는부분 ///////////////////////////////////////////////////////////////
<input type="reset" title="$form_reset" value="$form_reset" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/>
<input type="submit" name="modifyMod" title="$form_delete" value="$form_delete" style="font-weight:bold; HEIGHT:26px; CURSOR:pointer;"/></td>
<td height="60" align="right" nowrap><a href="$lists_link"><img title="$btn_lists" src="$fbExtenPath/btn_list.png" align="absmiddle"/></a></td></tr>
</table>
</form>
</div>
ENDFORM;
}
else {
// 방문자의 이름, 비밀번호쌍이 틀렸을 때.
$out.=<<<ENDFORM
<h4>$Message_pass2</h4>
<form name="FunBoard" method="post" action="">
<input name="modifyMod" type="image" src="$fbExtenPath/btn_reset.png" title="$form_back" border="0" value="$form_back" /><p><BR />
</p>
</form>
<div style="font-size: 100%; text-align: right;"><a href="$lists_link"><img title="$btn_lists" src="$fbExtenPath/btn_list.png" /></a></div>
ENDFORM;
}

해결 가능한 사람 포인트 그누포인트 10,000포인트 드립니다.
기간은 배포전까지
제가 보이는 버그는 대부분 해결이 되었고 이 부분만 해결이 되면 배포 버전을 보실 수 있습니다.
해결이 안 나도 배포는 됩니다.
파일 한개짜리 게시판 ......
고맙습니다.
참고로 요기 입니다.
기간은 배포전까지
제가 보이는 버그는 대부분 해결이 되었고 이 부분만 해결이 되면 배포 버전을 보실 수 있습니다.
해결이 안 나도 배포는 됩니다.
파일 한개짜리 게시판 ......
고맙습니다.
참고로 요기 입니다.

IE7에서는 잘 됩니다.

ie는 다 안되고 있습니다.
잠시 캡차를 닫아 두었습니다.
그리고 수정해볼수 있는글을 올려 두었 습니다.
비번도.
이미지로 했을때 ie와 파폭 비교해보세요.
이상하게 ie는 안됩니다. 무슨 차이가 있는지 궁금 합니다.
고맙습니다.
잠시 캡차를 닫아 두었습니다.
그리고 수정해볼수 있는글을 올려 두었 습니다.
비번도.
이미지로 했을때 ie와 파폭 비교해보세요.
이상하게 ie는 안됩니다. 무슨 차이가 있는지 궁금 합니다.
고맙습니다.
음.. 테스트 결과,
제가 알고있는게 맞습니다.
파이어폭스상에서도 <input type="image" 사용시 속성에 value들어가니 경고구문을 뿜어냅니다. 굳이 값을 넘기셔야한다면. onclick속성이나 onsubmit 속성을 함께 사용해주시는것을 권장합니다.
html 기본문서 작성하는것을 예로 알려드릴게요.
그냥 가령
<form>
<input value="">
</form>
이라는 문서가 있으면, input type이 없으면기본 text로 되어 노출됩니다.
그걸 엔터치면 action이정해져있지 않아 자기자신을 호출하며 submit이 됩니다.
input type이 image 라면, 기본으로 submit를 가지고 있습니다. value도 먹힐 수 있지만 권장사항은 아닙니다.
왜냐하면 type을 이미지로 바꾸는 순간 그 태그안의 속성은 form에 쓰이는 속성을 무시하고 image태그의 속성을 받아들입니다.
소스살펴보니. 자기자신을 호출하는 페이지던데 맞나요? action=""기본이라서;;
index.php를 거쳐서 돌아나오도록 설정되어있다면.
해당변수를 모두 못가지고 갑니다;;
이건 역시나 onsubmit속성을 권장해요 : ) ;;;;
DOCTYPE을 설정하지 않으셨으므로,
http://trio.co.kr/webrefer/html/interact/forms.html#h-17.4.1
기준으로 참조하세요
제가 알고있는게 맞습니다.
파이어폭스상에서도 <input type="image" 사용시 속성에 value들어가니 경고구문을 뿜어냅니다. 굳이 값을 넘기셔야한다면. onclick속성이나 onsubmit 속성을 함께 사용해주시는것을 권장합니다.
html 기본문서 작성하는것을 예로 알려드릴게요.
그냥 가령
<form>
<input value="">
</form>
이라는 문서가 있으면, input type이 없으면기본 text로 되어 노출됩니다.
그걸 엔터치면 action이정해져있지 않아 자기자신을 호출하며 submit이 됩니다.
input type이 image 라면, 기본으로 submit를 가지고 있습니다. value도 먹힐 수 있지만 권장사항은 아닙니다.
왜냐하면 type을 이미지로 바꾸는 순간 그 태그안의 속성은 form에 쓰이는 속성을 무시하고 image태그의 속성을 받아들입니다.
소스살펴보니. 자기자신을 호출하는 페이지던데 맞나요? action=""기본이라서;;
index.php를 거쳐서 돌아나오도록 설정되어있다면.
해당변수를 모두 못가지고 갑니다;;
이건 역시나 onsubmit속성을 권장해요 : ) ;;;;
DOCTYPE을 설정하지 않으셨으므로,
http://trio.co.kr/webrefer/html/interact/forms.html#h-17.4.1
기준으로 참조하세요

테스트 페이지에 이런글을 남기시고 가셨습니다.
//////////////////////////////////////////////////////////////////////////////
npc IE8 type=submit 태그의 type속성을 value속성보다 선처리하여넘어감 npc IE8 type=image 해당페이지를 다시 로드하여 비밀번호를 물어봄 (우선하는 속성이 value 속성이 됨)
- 알고계시는지 몰라서 여쭈어보는것이지만, form 태그를 작성하신후, action 속성을 안정해주시면, image일 경우에는 value속성을 받아들이기전에 'submit'으로 속성을 먼저 실행해버립니다. 그럼 그냥 제자리에서 새로고침하는 것이 되어버리지요.
npc FF3 test type=image 경고출력되나 전송됨 (경고내용 : 사용할수없는속성값 - value) npc IE7 test type=submit 둘다 적용되어 문제없이 넘어감
////////////////////////////////////////////////////////////////////////////////
답을 찾은것 같습니다.
글이 잠겼습니다
원인을 았았으니 수정하는 일만 남았 습니다.
이분을 찾습니다.
쪽지주셔요(아이피 정보가 있습니다)
고맙습니다.
//////////////////////////////////////////////////////////////////////////////
npc IE8 type=submit 태그의 type속성을 value속성보다 선처리하여넘어감 npc IE8 type=image 해당페이지를 다시 로드하여 비밀번호를 물어봄 (우선하는 속성이 value 속성이 됨)
- 알고계시는지 몰라서 여쭈어보는것이지만, form 태그를 작성하신후, action 속성을 안정해주시면, image일 경우에는 value속성을 받아들이기전에 'submit'으로 속성을 먼저 실행해버립니다. 그럼 그냥 제자리에서 새로고침하는 것이 되어버리지요.
npc FF3 test type=image 경고출력되나 전송됨 (경고내용 : 사용할수없는속성값 - value) npc IE7 test type=submit 둘다 적용되어 문제없이 넘어감
////////////////////////////////////////////////////////////////////////////////
답을 찾은것 같습니다.
글이 잠겼습니다
원인을 았았으니 수정하는 일만 남았 습니다.
이분을 찾습니다.
쪽지주셔요(아이피 정보가 있습니다)
고맙습니다.
그 엔피씨가 저입니다 : )..