برگزیده های پرشین تولز

گرفتن یک مقدار تکست - ترجمه آن و قرار دادن ترجمه در آدرس

amir400

Registered User
تاریخ عضویت
1 جولای 2006
نوشته‌ها
103
لایک‌ها
2
سلام . می خوام یک فرم اچ تی ام ای درست کنم با یک تکست باکس و یک دکمه ی سابمیت.
قراره ورودی کاربر در تکست باکس اسمش باشه edidn:
کد:
<input type="text" name="edIDN" />
بعدش قراره این جاوا اسکریپت برای ترجمه اینکلود بشه:
کد:
<script type="text/javascript" src="http://idnlinks.org/punycode_idn.js"></script>
و حالا قراره مقداری به نام edpunycode به این صورت تعریف بشه:
کد:
edpunycode.value=punycode.EncodeDomain(edIDN.value)
حالا قراره با سابمیت کردن فرم کاربر به این آدرس منتقل بشه:
کد:
http://www.register.com/register_domain2.php?domainquery=[B]edPunycode[/B]&reseller=40ccc9903abded2
که در اون آدرس edpunycode همون چیزیه که در مراحل بالا محاسبه شده و باید در آدرس قرار بگیره!
چطور باید این کد را نوشت ؟
ممنون
 
Last edited:

amir400

Registered User
تاریخ عضویت
1 جولای 2006
نوشته‌ها
103
لایک‌ها
2
من این کدو امتحان کردم .
کد:
<form method="GET" action="http://www.register.com/register_domain2.php">
  <p>
  &nbsp;</p>
  <p>
  &nbsp;</p>
  <p><input type="text" name="edIDN" size="20"></p>
  <p>&nbsp;</p>
  <p><input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
  <input type="hidden" name="domainquery" domainquery.value="punycode.EncodeDomain(edIDN.value)">
  <input type="hidden" name="reseller" value="40ccc9903abded2">
  <script type="text/javascript" src="http://idnlinks.org/punycode_idn.js"></script>

</form>
ولی جواب نمیده . با سابمیت کردن میره به:
کد:
http://www.register.com/register_domain2.php?domainquery=&reseller=40ccc9903abded2
یعنی مشکلش اینه که جلوی Domainquery= خالی میمونه و مقدار محاسبه شده ی edpunycode در اونجا قرار نمی گیره!!
چیکار کنم؟
 
Last edited:

amir400

Registered User
تاریخ عضویت
1 جولای 2006
نوشته‌ها
103
لایک‌ها
2
اینم جواب نداد:
کد:
<form name="myform" method="GET" action="http://www.register.com/register_domain2.php">
  <p>
  &nbsp;</p>
  <p>
  &nbsp;</p>
  <p><input type="text" name="edIDN" size="20"></p>
  <p>&nbsp;</p>
  <p><input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
  <input type="hidden" name="domainquery" >
  <input type="hidden" name="reseller" value="40ccc9903abded2">

</form>

<script type="text/javascript">



var BASE=36,TMIN=1,TMAX=26,SKEW=38,DAMP=700,INITIAL_BIAS=72,INITIAL_N=128,DELIMITER="-",MAX_INT=2147483647,$S=String.fromCharCode,$P=parseInt
function _(i){return i.length}
var Punycode=function(){},A=Punycode.prototype
A._A=function(s){return _(s)?s.charCodeAt(0):0}
A._P=function(_2,_3){var s="",p;for(p=0;p<_(_3);p++)s+=_3.charAt(_(_3)-p);p=s.indexOf(_2);return (p>-1)?_(s)-p:-1}
A._U=function(i){return (i<0)?65536+i:i}
A.$DC=function(d){var _8=0;if(d<26){_8=d+97}else{if(d<36)_8=d-26+48}return _8}
A.$CD=function(c){var _a=BASE;if((c-48)<10){_a=c-22}else{if((c-65)<26){_a=c-65}else{if((c-97)<26){_a=c-97}}}return _a}
A.$A=function(_b,_c,_d){var dt=_b,k=0;if(_d){dt=$P(dt/DAMP)}else{dt=$P(dt/2)}dt+=$P(dt/_c);while(dt>$P(((BASE-TMIN)*TMAX)/2)){dt=$P(dt/(BASE-TMIN));k+=BASE;}return(k+$P(((BASE-TMIN+1)*dt)/(dt+SKEW)))}
A._B=function(c,n){return (this._U(this._A(c))<n)}
A._G=function(n,_12){var res=MAX_INT;for(var t=0;t<_(_12);t++){var a=_12.charCodeAt(t);if((a>=n)&&(a<res))res=a}return res}
A.Encode=function(_16){var _17=_16,$O="",K=this;try{var n=INITIAL_N,_19=INITIAL_BIAS,b=0,c;for(var l=0;l<_(_17);l++){c=_17.charAt(l);if(K._B(c,INITIAL_N)){$O+=c;b++}}if(_($O)<_(_17)){if(_($O)>0){$O+=DELIMITER}}var h=b,_1e=0;while(h<_(_17)){var m=K._G(n,_17);_1e+=K._U(m-n)*(h+1);n=m;for(var l=0;l<_(_17);l++){c=_17.charAt(l);if(K._B(c,n)){_1e++}else{if(K._U(K._A(c))==n){var q=_1e;k=BASE;while(k<=MAX_INT){if(k<=(_19+TMIN)){t=TMIN}else{if(k>=(_19+TMAX)){t=TMAX}else{t=k-_19}}if(q<t)break;$O+=$S(K.$DC(t+((q-t)%(BASE-t))));q=$P((q-t)/(BASE-t));k+=BASE}$O+=$S(K.$DC(q));first=false;if(h==b)first=true;_19=K.$A(_1e,h+1,first);_1e=0;h++}}}_1e++;n++}}catch(e){$O=_16}return $O.toLowerCase()}
A.Decode=function(_22){var _23=_22,$O="",K=this;try{var n=INITIAL_N,_25=INITIAL_BIAS,i=0,c,ps=K._P(DELIMITER,_23);if(ps>-1){for(var l=0;l<ps;l++){c=_23.charAt(l);if(K._B(c,INITIAL_N)){$O+=c}else{return ""}}}ps++;while(ps<_23.length){var _2a=i,w=1,k=BASE;while((k<=MAX_INT)&&(ps<_23.length)){c=_23.charAt(ps);ps++,_2b=K.$CD(K._A(c));if((_2b>=BASE)||(_2b>$P((MAX_INT-i)/w))){return ""}i+=_2b*w;if(k<=_25){t=TMIN}else{if(k>=(_25+TMAX)){t=TMAX}else{t=k-_25}}if(_2b<t)break;if(w>$P(MAX_INT/(BASE-t))){return ""}w*=(BASE-t);k+=BASE}var _2c=(_2a==0);_25=this.$A(i-_2a,$O.length+1,_2c);if($P(i/$O.length+1)>(MAX_INT-n))return "";n+=$P(i/($O.length+1));i%=($O.length+1);if(K._B($S(n),INITIAL_N))return "";$O=$O.substr(0,i)+$S(n)+$O.substr(i);i++}}catch(e){$O=_22}return $O}
A.EncodeDomain=function(_2d){var c=_2d.split(".");for(var i=0;i<_(c);i++){if(/[^\x00-\x7f]+/.test(c[i]))c[i]="xn--"+this.Encode(c[i])}return c.join(".")}
A.DecodeDomain=function(_2f){var c=_2f.split(".");for(var i=0;i<_(c);i++){try{if(/^xn--/.test(c[i]))c[i]=this.Decode(c[i].replace("xn--",""))}catch(e){return}}return c.join(".")}



function doCalcAndSubmit() {
// get values
val1 = document.forms["myform"].edIDN.value;


// do some calculation
myNewValue = punycode.EncodeDomain(edIDN.value);

// set the value in the right field
document.forms["myform"].domainquery.value = myNewValue;

// submit the form as if submit was pressed.
document.forms["myform"].submit();
}
</script>
 
بالا