MozTW 討論區 https://forum.moztw.org/ |
|
為何無法Login某些網路下單須要鍵入password的網站??? https://forum.moztw.org/viewtopic.php?f=2&t=2523 |
第 1 頁 (共 1 頁) |
發表人: | 求助 [ 2004-06-12, 19:56 ] |
文章主題 : | 為何無法Login某些網路下單須要鍵入password的網站??? |
為何無法Login某些網路下單須要鍵入password的網站? |
發表人: | 求助 [ 2004-06-12, 20:51 ] |
文章主題 : | 求助 |
也就是在ie可以正常進入的網頁,轉到Firefox 0.8在輸入完password後,好像是在check CA後陷住,不知要如何解決??? |
發表人: | 訪客 [ 2004-06-13, 19:23 ] |
文章主題 : | 為何無法Login某些網路下單須要鍵入password的網站? |
Error source code 如下:newwin=window.showModalDialog(sStr,"remote","dialogheight:11;dialogwidth:26;maximize:0;minimize:0;center:1;help:0;"); |
發表人: | 訪客 [ 2004-06-13, 20:43 ] |
文章主題 : | 奇怪!!! |
好像沒人碰過這個問題?????? |
發表人: | 訪客 [ 2004-06-13, 20:55 ] |
文章主題 : | |
承主題 哪位高手能幫幫我? 謝謝 |
發表人: | nakeho [ 2004-06-13, 23:06 ] |
文章主題 : | |
你給的資訊太少了,直接把網址貼出來比較快。 不過看這情況,八九不離十是Javascript有問題。 |
發表人: | piaip [ 2004-06-13, 23:43 ] |
文章主題 : | |
90% 都是它在 submit 前用某些 javascript 做檢查 然後這些 javascript 是 IE only 解決方法: (1) 向作者提出,請他修改 (2) 自己看懂 source 修改,並回報給作者 |
發表人: | 訪客 [ 2004-06-14, 20:57 ] |
文章主題 : | |
謝謝各位前輩,我用javascript除錯器將程式列出如下,程式應該是陷在214行的,不知該如何處理。 function readCookie(name) 2 { - 3 var namex = name+"="; - 4 if(document.cookie.length == 0) - 5 return null; - 6 var nameat = document.cookie.indexOf(namex); - 7 if( nameat == -1) - 8 return null; - 9 var ValueAt = nameat+namex.length; - 10 var endPos = document.cookie.indexOf( ';', ValueAt); - 11 if( endPos == -1) - 12 return document.cookie.substring(ValueAt); 13 else - 14 return document.cookie.substring(ValueAt,endPos); 15 } 16 17 function deleteCookie(theName) 18 { - 19 document.cookie = theName + "="; 20 } 21 22 function checkCA(Raw) 23 { - 24 var CAType=readCookie("CAType"); - 25 var CAPath=readCookie("CAPath"); - 26 if((CAType=="C" || CAType=="E") && CAPath.length>=5) 27 { - 28 var Count,KeySpec,criterion,b64Cert,buffer,spStr; - 29 spStr = CAPath.split(","); - 30 Count = spStr[0]; - 31 KeySpec = spStr[1]; - 32 criterion = spStr[2]; - 33 b64Cert = FCliPKICOM.FGetCertFromCAPI(Count,KeySpec,criterion); - 34 if(FCliPKICOM.LastErrorCode != 0 ) 35 { - 36 alert("Get Certificate Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 37 return false; 38 } 39 else 40 { - 41 FCliPKICOM.FGetCertAttribute(b64Cert); - 42 if(FCliPKICOM.LastErrorCode != 0 ) 43 { - 44 alert("Get Certificate Attribute Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 45 return false; 46 } 47 else 48 { - 49 var ExpDate = FCliPKICOM.ExpiredDate; - 50 var SDN = FCliPKICOM.SubjectDN; - 51 if(ExpDate.length>=10 && SDN.length>=8) 52 { - 53 var TodayIdx=readCookie("USER").indexOf("SYS%5FTODAY="); - 54 var IDNOIdx=readCookie("USER").indexOf("IDNO="); - 55 if(TodayIdx>=0 && IDNOIdx>=0 && readCookie("USER").length>=TodayIdx+20) 56 { - 57 var SysDate=readCookie("USER").substring(TodayIdx+12,TodayIdx+20); - 58 var SysIDNO=readCookie("USER").substring(IDNOIdx+5); - 59 if(SysIDNO.indexOf("&")>=0) - 60 SysIDNO=SysIDNO.substring(0,SysIDNO.indexOf("&")); - 61 ExpDate=ExpDate.substring(0,4)+ExpDate.substring(5,7)+ExpDate.substring(8,10); - 62 var OUidx=SDN.lastIndexOf("OU="); - 63 if(OUidx>=0) 64 { - 65 OUidx=SDN.substring(OUidx+3); - 66 OUidx=OUidx.search(/capital/i); 67 } - 68 var CAIDNO=SDN.substring(SDN.indexOf("CN=")+3); - 69 if(CAIDNO.indexOf(",") >= 0) - 70 CAIDNO=CAIDNO.substring(0,CAIDNO.indexOf(",")); 71 - 72 if(OUidx<0) 73 { - 74 alert("�D�����q�ֵo������!"); - 75 return false; 76 } - 77 else if(SysDate>ExpDate) 78 { - 79 alert("���Ҥw�L��!"); - 80 return false; 81 } - 82 else if(SysIDNO!=CAIDNO) 83 { - 84 alert("���Ҩ����!"); - 85 return false; 86 } 87 else 88 { - 89 var B64P7Sig = FCliPKICOM.FSignP7ByCAPI(b64Cert,Raw); - 90 if(FCliPKICOM.LastErrorCode != 0 ) 91 { - 92 alert("Signature Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 93 return false; 94 } 95 else 96 { - 97 return B64P7Sig; 98 } 99 } 100 } 101 else 102 { - 103 alert("�Ѽ�Ū���~�A�Э��s�n�J!"); - 104 return false; 105 } 106 } 107 else 108 { - 109 alert("���Ҥ��e����!"); - 110 return false; 111 } 112 } 113 } 114 } - 115 else if((CAType=="T" || CAType=="M") && CAPath.length>3) 116 { - 117 var idx,path,Pin,b64Cert,endata; - 118 idx = readCookie("CAPath").indexOf(","); - 119 path = readCookie("CAPath").substring(0,idx); - 120 endata = readCookie("CAPath").substring(idx+1); - 121 Pin = FCliPKICOM.FDecryptBlock(endata,"capital"); - 122 b64Cert = FCliPKICOM.FGetCertFromP12(path,Pin); - 123 if(FCliPKICOM.LastErrorCode != 0 ) 124 { - 125 alert("Get Certificate Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 126 return false; 127 } 128 else 129 { - 130 FCliPKICOM.FGetCertAttribute(b64Cert); - 131 if(FCliPKICOM.LastErrorCode != 0 ) 132 { - 133 alert("Get Certificate Attribute Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 134 return false; 135 } 136 else 137 { - 138 var ExpDate = FCliPKICOM.ExpiredDate; - 139 var SDN = FCliPKICOM.SubjectDN; - 140 if(ExpDate.length>=10 && SDN.length>=8) 141 { - 142 var TodayIdx=readCookie("USER").indexOf("SYS%5FTODAY="); - 143 var IDNOIdx=readCookie("USER").indexOf("IDNO="); - 144 if(TodayIdx>=0 && IDNOIdx>=0 && readCookie("USER").length>=TodayIdx+20) 145 { - 146 var SysDate=readCookie("USER").substring(TodayIdx+12,TodayIdx+20); - 147 var SysIDNO=readCookie("USER").substring(IDNOIdx+5); - 148 if(SysIDNO.indexOf("&")>=0) - 149 SysIDNO=SysIDNO.substring(0,SysIDNO.indexOf("&")); - 150 ExpDate=ExpDate.substring(0,4)+ExpDate.substring(5,7)+ExpDate.substring(8,10); - 151 var OUidx=SDN.lastIndexOf("OU="); - 152 if(OUidx>=0) 153 { - 154 OUidx=SDN.substring(OUidx+3); - 155 if(OUidx.search(/capital/i)>=0) 156 { - 157 OUidx=OUidx.search(/capital/i); 158 } 159 else 160 { - 161 OUidx=OUidx.search(/macoto/i); 162 } 163 } - 164 var CAIDNO=SDN.substring(SDN.indexOf("CN=")+3); - 165 if(CAIDNO.indexOf(",") >= 0) - 166 CAIDNO=CAIDNO.substring(0,CAIDNO.indexOf(",")); 167 - 168 if(OUidx<0) 169 { - 170 alert("�D�����q�ֵo������!"); - 171 return false; 172 } - 173 else if(SysDate>ExpDate) 174 { - 175 alert("���Ҥw�L��!"); - 176 return false; 177 } - 178 else if(SysIDNO!=CAIDNO) 179 { - 180 alert("���Ҩ����!"); - 181 return false; 182 } 183 else 184 { - 185 var B64P7P12Sig = FCliPKICOM.FSignP7ByP12(path,Pin,Raw); - 186 if(FCliPKICOM.LastErrorCode != 0 ) 187 { - 188 alert("Signature Failed! Error code: " + FCliPKICOM.LastErrorCode + "," + FCliPKICOM.LastErrorMessage); - 189 return false; 190 } 191 else 192 { - 193 return B64P7P12Sig; 194 } 195 } 196 } 197 else 198 { - 199 alert("�Ѽ�Ū���~�A�Э��s�n�J!"); - 200 return false; 201 } 202 } 203 else 204 { - 205 alert("���Ҥ��e����!"); - 206 return false; 207 } 208 } 209 } 210 } 211 else 212 { - 213 var sStr = "../LoadCA.asp"; - 214 newwin=window.showModalDialog(sStr,"remote","dialogheight:11;dialogwidth:26;maximize:0;minimize:0;center:1;help:0;"); - 215 if(newwin) - 216 return checkCA(Raw); 217 else - 218 return false; 219 } 220 } 221 222 function makeRaw(pform) 223 { - 224 var orderdata=""; - 225 var cnt=0; - 226 for(var i=0;i<pform.elements.length;i++) 227 { - 228 if(pform.elements[i].type == "submit" || - 229 pform.elements[i].type == "reset" || - 230 pform.elements[i].type == "button") 231 { - 232 continue; 233 } - 234 if(pform.elements[i].type == "select-one") 235 { - 236 for(var j=0;j < pform.elements[i].options.length;j++) 237 { - 238 if(pform.elements[i].options[j].selected) 239 { - 240 if(cnt != 0) - 241 orderdata = orderdata +"&"; - 242 orderdata = orderdata + pform.elements[i].name + "=" - 243 + pform.elements[i].options[j].value; - 244 cnt++; - 245 } 246 } 247 } - 248 else if(pform.elements[i].type == "radio" || - 249 pform.elements[i].type == "checkbox") 250 { - 251 if(pform.elements[i].checked) 252 { - 253 if(cnt != 0) - 254 orderdata = orderdata +"&"; - 255 orderdata = orderdata + pform.elements[i].name + "=" - 256 + pform.elements[i].value; - 257 cnt++; 258 } |
發表人: | 訪客 [ 2004-07-22, 11:02 ] |
文章主題 : | |
window.showModalDialog(......); 這是微軟IE自家的語法,開啟一個對話視窗,類似window.open(.....) 但showModalDialog的好處就是他可以鎖定開啟的視窗為作用中,除非關閉後,才會回至原父視窗 |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |