<script type="text/javascript"> fileurlpp = 'domain:main-server1.alcoprog.ru' ; fileurlpp = s = s.replace('domain:', ''); $('.link').html('<a href="http://&url='+fileurlpp+'></a>'); </script>
так? но не работает.---------- Добавлено 26.04.2014 в 12:46 ----------Разобрался. Всем спасибо)
Вот, к чему пришел.
var s = "domain:main-server1.alcoprog.ru"; // Replace "domain:" with "". var re = /domain:/g; var result = s.replace(re, ""); document.write(result); // Output: main-server1.alcoprog.ru
А как его с моим связать?
Никак, строка "domain:main-server1.alcoprog.ru" импортируется средствами cms из удаленного сервера (.txt).
Есть два сайта (около 1000 хостов каждый), 70% трафика - Россия. Сайты - один софт портал, второй - торрент.
Посоветуйте, пожалуйста, ПП, чтобы можно было без проблем получать до 200р с сайта, можно и больше =)
siv1987, суть такова, мне нужно сделать так, чтобы пользователь скачивал файлы на новой (отдельной странице).
Есть такие данные url, title, size - мне нужно, чтобы я их мог отобразить на новой (отдельной странице).
При этом, мне нужно, чтобы url был закодирован, который ведёт на новую (отдельную страницу).
Вот так я кодировал
<script type="text/javascript"> fileurl = '$FILE_URL$' ; fileurl = Base64.encode(fileurl); filetitle = '$ENTRY_TITLE$' ; filetitle = Base64.encode(filetitle); filesize = '$FILE_SIZE$' ; filesize = Base64.encode(filesize); $('.go-link').html('<a href="/download.htm?link='+fileurl+'&title='+filetitle+'&size='+filesize+'" target="_blank">Скачать</a>'); </script>
siv1987, не подскажите как закодировать тогда это в urlencode
/download.html?link='+fileurl+'&title='+filetitle+'&size='+filesize+'
А потом, получить текст, аналогично как тут:
document.write('<a href='+base64_decode(urlParams['link'])+'>'+base64_decode(urlParams['title'])+'</a>');
А то, я ничего не могу понять в JS, буду благодарен.
siv1987, не посоветуете что лучше использовать?
siv1987, спасибо огромное) работает)
Еще один вопрос, а как быть с русскими символами? Они декодируются неправильно.
Вот, что у меня получилось. Но оно не работает(
<html><head><script>function base64_decode(data) { var i = 0; var keyChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; var resultStr = ""; var charCd1, charCd2, charCd3; var charEnc1, charEnc2, charEnc3, charEnc4; data = data.replace(/[^A-Za-z0-9\+\/\=]/g, ""); while (i < data.length) { charEnc1 = keyChars.indexOf(data.charAt(i++)); charEnc2 = keyChars.indexOf(data.charAt(i++)); charEnc3 = keyChars.indexOf(data.charAt(i++)); charEnc4 = keyChars.indexOf(data.charAt(i++)); charCd1 = (charEnc1 << 2) | (charEnc2 >> 4); charCd2 = ((charEnc2 & 15) << 4) | (charEnc3 >> 2); charCd3 = ((charEnc3 & 3) << 6) | charEnc4; resultStr += String.fromCharCode(charCd1); if (charEnc3 != 64) { resultStr += String.fromCharCode(charCd2); } if (charEnc4 != 64) { resultStr += String.fromCharCode(charCd3); } } return resultStr;}</script><script language="JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js" type="text/javascript"></script></head><body><script type="text/javascript">var urlParams;(window.onpopstate = function () { var match, pl = /\+/g, // Regex for replacing addition symbol with a space search = /([^&=]+)=?([^&]*)/g, decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); }, query = window.location.search.substring(1); urlParams = {}; while (match = search.exec(query)) urlParams[decode(match[1])] = decode(match[2]);})();</script><script>alert(decode_base64(urlParams['link']));</script> <span class="download"><script type="text/javascript">function ono(name){ var start=location.search.indexOf("?"+name+"="); if (start<0) start=location.search.indexOf("&"+name+"="); if (start<0) return ''; start += name.length+2; var end=location.search.indexOf("&",start)-1; if (end<0) end=location.search.length; var go=''; for(var i=start;i<=end;i++) { var c=location.search.charAt(i); go=go+(c=='+'?' ':c); } return unescape(go);}{ document.write('<a href='+ono('link')+'>'+ono('title')+'</a>'); document.write('');}</script> </span></body></html>
Первая часть.
<script type="text/javascript">var urlParams;(window.onpopstate = function () { var match, pl = /\+/g, // Regex for replacing addition symbol with a space search = /([^&=]+)=?([^&]*)/g, decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); }, query = window.location.search.substring(1); urlParams = {}; while (match = search.exec(query)) urlParams[decode(match[1])] = decode(match[2]);})();</script><script> urlParams = { link: " Hello ", title: "main", size: "front", sid: "de8d49b78a85a322c4155015fdce22c4", empty: ""}alert(urlParams["mode"]);alert("empty" in urlParams);</script>
Вторая часть.
<script type="text/javascript">function ono(name){ var start=location.search.indexOf("?"+name+"="); if (start<0) start=location.search.indexOf("&"+name+"="); if (start<0) return ''; start += name.length+2; var end=location.search.indexOf("&",start)-1; if (end<0) end=location.search.length; var go=''; for(var i=start;i<=end;i++) { var c=location.search.charAt(i); go=go+(c=='+'?' ':c); } return unescape(go);}{ document.write('<a href='+ono('link')+'>'+ono('title')+'</a>'); document.write('');}</script>
Вот вторую часть я вроде бы создал, она работает, а как связать с первой, которая декодирует код?