//Доработанный скрипт обратного отсчета времени CountDown
var eventstr = "Вже у прокаті"; //Эта строка выводиться по окончанию отсчета var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
function CountDownNew(objCD){ var countdownid = document.getElementById(objCD.id); yr=objCD.cdyear; m=objCD.cdmonth; d=objCD.cdday;
var today=new Date(); var todayy=today.getYear(); if (todayy < 1000) todayy+=1900; var todaym=today.getMonth(); var todayd=today.getDate(); var todayh=today.getHours(); var todaymin=today.getMinutes(); var todaysec=today.getSeconds(); var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec; futurestring=montharray[m-1]+" "+d+", "+yr dd=Date.parse(futurestring)-Date.parse(todaystring); dday=Math.floor(dd/(60*60*1000*24)*1); dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1); dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1); dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1); if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1){ countdownid.innerHTML=eventstr; return } else { var lastchar = ""+dsec; lastchar = lastchar.substring(lastchar.length-1,lastchar.length); var dsecstr = "секунд"; if (lastchar=="1") { dsecstr = "секунда"; } if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dsecstr = "секунди"; }
lastchar = ""+dmin; lastchar = lastchar.substring(lastchar.length-1,lastchar.length); var dminstr = "хвилин"; if (lastchar=="1") { dminstr = "хвилина"; } if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dminstr = "хвилини"; }
lastchar = ""+dhour; lastchar = lastchar.substring(lastchar.length-1,lastchar.length); var dhourstr = "години"; if (lastchar=="1") { dhourstr = "година"; } if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { dhourstr = "години"; }
lastchar = ""+dday; lastchar = lastchar.substring(lastchar.length-1,lastchar.length); var ddaystr = "днів"; if (lastchar=="1") { ddaystr = "день"; } if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")) { ddaystr = "дня"; }
CountDownNew({cdyear: 2010,cdmonth: 5,cdday: 5,id: 'idcd1'});//Дата отсчета и ID элемента в который выводится время CountDownNew({cdyear: 2014,cdmonth: 7,cdday: 4,id: 'idcd2'}); CountDownNew({cdyear: 2012,cdmonth: 1,cdday: 1,id: 'idcd3'});
umka: Да шо вы заладили с этим %{HTTP_HOST}
Надо просто слэш в начале ставить, чтоб путь не вклинивался.
Типа так:
RewriteRule ^d/1\.html$ /d/2.html [R=301,L]
Для того чтоб путь не вклинивался, есть универсальное решение
всего одна строка для всего .htaccess
RewriteBase /
(ну для некоторых случаев вместо / другое значение)
А вообще я считаю (это мое личное мнение) что две строки
RewriteEngine On
RewriteBase /
просто обязаны присутствовать среди первых строк .htaccess, если в нем есть RewriteRule
Тогда не нужно начинать строку подстановки с /
siv1987: gormarket, все таки %{HTTP_HOST}?
Единстрвенный случай, когда при использовании
RewriteBase /
нужен %{HTTP_HOST} в строке подстановки, это когда редирект (именно редиркет внешний, а не реврайт) идет на каталог, в котором находится данный .htaccess (без указания имени файла или подкаталога)
Тогда в строке подстановки по идее ничего не нужно ставить (система сама добавит протокол+домен+RewriteBase), но оставлять строку подстновки пустой не позволяет синтаксис RewriteRule и придется в этом случае вставлять в строку подстановки полный путь "http://%{HTTP_HOST}/" (для корневого каталога сайта)
Не знаю, сработает ли последняя строка ( будет ли в данном контексте this ссылкой на форму ), но если не сработает, то можно вместо нее попробовать такую строку
нужны чтобы не происходило зацикливание (чтоб следующее правило не применялось, если преобразование уже сделано на последнем проходе по .htaccess)
Первые 2 строки не нужны, если выше в .htaccess они уже есть
Вторые 2 строки делают 301 редирект при обращении к papers.php на papers/ , с удалением строки запроса: именно так я понял пункт 1) в топике
Третья и четвертая пары строк делают реврайт на papers.php (без id третья и с id четвертая) при запросе "papers" и "papers/любое_число" с возможным завершающим слешем. При таких обращениях строка запроса добавляется к новому адресу.
'[umka: ;8877970']Ведь можно просто написать "/" и сэкономить ~0.0001% вычислительных ресурсов
Наверно все-таки не "/" а "/?" , но в принципе думаю Вы правы, подстановку в этом случае аппчу все равно придется делать, а вот размер .htaccess будет меньше на ~0.00001%.
:)
Так что в свое оправдание могу привести только следующее:
1. как спросили так и ответил (в топике было "http://...", я так и сделал, только универсальнее.)
2. с "http://%{HTTP_HOST}" (как мне кажется) более наглядно, что это редирект, а не реврайт (что может быть сомнительно с учетом наличия еще и "R=301")
3. под руку в нужный момент попался кусок кода с "http://%{HTTP_HOST}" (скопировал, вставил, подправил под текущие нужды)
Да шо вы заладили с этим %{HTTP_HOST}
Надо просто слэш в начале ставить, чтоб путь не вклинивался.
Типа так:
RewriteRule ^d/1\.html$ /d/2.html [R=301,L]
Для того чтоб путь не вклинивался, есть универсальное решение
всего одна строка для всего .htaccess
RewriteBase /
(ну для некоторых случаев вместо / другое значение)
А вообще я считаю (это мое личное мнение) что две строки
RewriteEngine On
RewriteBase /
просто обязаны присутствовать среди первых строк .htaccess, если в нем есть RewriteRule
Тогда не нужно начинать строку подстановки с /
gormarket, все таки %{HTTP_HOST}?
Единстрвенный случай, когда при использовании
RewriteBase /
нужен %{HTTP_HOST} в строке подстановки, это когда редирект (именно редиркет внешний, а не реврайт) идет на каталог, в котором находится данный .htaccess (без указания имени файла или подкаталога)
Тогда в строке подстановки по идее ничего не нужно ставить (система сама добавит протокол+домен+RewriteBase), но оставлять строку подстновки пустой не позволяет синтаксис RewriteRule и придется в этом случае вставлять в строку подстановки полный путь "http://%{HTTP_HOST}/" (для корневого каталога сайта)
Если вставить только вторую строку, то будет редирект при любой строке запроса, а не только "id=123"
juniorspecialistphp,
примените команду
imagecolortransparent($image, $bg);
в любом месте кода (после того как инициализированы $image и $bg)
но, до строки
imagetruecolortopalette($image, true, 255);
Похоже Ваша проблема в том, что Вы используете на одной странице HTML-элементы с одинаковым id, что недопустимо.
У Вас несколько форм с id="myForm" и в каждой есть элемент с id="output".
Замените для myForm и output id на class
jQuery('.pane #myForm').submit(function() {
на
jQuery('.pane .myForm').submit(function() {
jQuery('#output').attr('value', responseText);
на
jQuery(this).find('.output').attr('value', responseText);
Не знаю, сработает ли последняя строка ( будет ли в данном контексте this ссылкой на форму ), но если не сработает, то можно вместо нее попробовать такую строку
jQuery(objForm).find('.output').attr('value', responseText);
но тогда объявить в начале переменную
var objForm;
jQuery(document).ready(function(){
....
и в
jQuery('.pane .myForm').submit(function() {
добавить строку
objForm=this;
Infinity7, попробуйте так:
строки
RewriteCond %{ENV:REDIRECT_STATUS} ^$
нужны чтобы не происходило зацикливание (чтоб следующее правило не применялось, если преобразование уже сделано на последнем проходе по .htaccess)
Первые 2 строки не нужны, если выше в .htaccess они уже есть
Вторые 2 строки делают 301 редирект при обращении к papers.php на papers/ , с удалением строки запроса: именно так я понял пункт 1) в топике
Третья и четвертая пары строк делают реврайт на papers.php (без id третья и с id четвертая) при запросе "papers" и "papers/любое_число" с возможным завершающим слешем. При таких обращениях строка запроса добавляется к новому адресу.
;8877970']Ведь можно просто написать "/" и сэкономить ~0.0001% вычислительных ресурсов
Наверно все-таки не "/" а "/?" , но в принципе думаю Вы правы, подстановку в этом случае аппчу все равно придется делать, а вот размер .htaccess будет меньше на ~0.00001%.
:)
Так что в свое оправдание могу привести только следующее:
1. как спросили так и ответил (в топике было "http://...", я так и сделал, только универсальнее.)
2. с "http://%{HTTP_HOST}" (как мне кажется) более наглядно, что это редирект, а не реврайт (что может быть сомнительно с учетом наличия еще и "R=301")
3. под руку в нужный момент попался кусок кода с "http://%{HTTP_HOST}" (скопировал, вставил, подправил под текущие нужды)
Я же не знал, что у Вас есть в .htaccess еще реврайты на index.php.
Поставьте перед новым правилом условие, чтобы оно не примерялось к адресам, к которым уже применен реврайт, чтобы стало так:
надо перенести test.ru/index.php?тут_все_что_было_после_знака_вопроса
на test.ru
Тогда, чтобы сделать редирект, убрав из адреса index.php и строку запроса (все что после ?) сделайте так:
по этому правилу например
test.ru/index.php?тут_что_угодно
переадресуется на
test.ru/
Angelys, редирект
test.ru/index.php?тут_что_угодно
на
test.ru/?тут_все_что_было_после_знака_вопроса
делается проще:
Если хотите обработать тем же правилом и вложенные каталоги, а не только корневой, то можно так
по этому правилу например
test.ru/folder/index.php?тут_что_угодно
переадресуется на
test.ru/folder/?тут_все_что_было_после_знака_вопроса