//Доработанный скрипт обратного отсчета времени CountDownvar 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+", "+yrdd=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 = "дня"; }countdownid.innerHTML="<b>До прем'єри:</b> <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;}setTimeout((function(e) {return function() {CountDownNew(e);}})(objCD), 1000) ;}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'});
Для того чтоб путь не вклинивался, есть универсальное решение
всего одна строка для всего .htaccess
RewriteBase /
(ну для некоторых случаев вместо / другое значение)
А вообще я считаю (это мое личное мнение) что две строки
RewriteEngine On
просто обязаны присутствовать среди первых строк .htaccess, если в нем есть RewriteRule
Тогда не нужно начинать строку подстановки с /
Единстрвенный случай, когда при использовании
нужен %{HTTP_HOST} в строке подстановки, это когда редирект (именно редиркет внешний, а не реврайт) идет на каталог, в котором находится данный .htaccess (без указания имени файла или подкаталога)
Тогда в строке подстановки по идее ничего не нужно ставить (система сама добавит протокол+домен+RewriteBase), но оставлять строку подстновки пустой не позволяет синтаксис RewriteRule и придется в этом случае вставлять в строку подстановки полный путь "http://%{HTTP_HOST}/" (для корневого каталога сайта)
RewriteCond %{QUERY_STRING} ^id=123$RewriteRule ^d/1\.html$ d/2.html [R=301,L]
Если вставить только вторую строку, то будет редирект при любой строке запроса, а не только "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(){
....
и в
добавить строку
objForm=this;
Infinity7, попробуйте так:
RewriteEngine OnRewriteBase /RewriteCond %{ENV:REDIRECT_STATUS} ^$RewriteRule ^papers.php$ papers/? [L,R=301]RewriteCond %{ENV:REDIRECT_STATUS} ^$RewriteRule ^papers/?$ papers.php [QSA,L]RewriteCond %{ENV:REDIRECT_STATUS} ^$RewriteRule ^papers/([0-9]+)/?$ papers.php?id=$1 [QSA,L]
строки
RewriteCond %{ENV:REDIRECT_STATUS} ^$
нужны чтобы не происходило зацикливание (чтоб следующее правило не применялось, если преобразование уже сделано на последнем проходе по .htaccess)
Первые 2 строки не нужны, если выше в .htaccess они уже есть
Вторые 2 строки делают 301 редирект при обращении к papers.php на papers/ , с удалением строки запроса: именно так я понял пункт 1) в топике
Третья и четвертая пары строк делают реврайт на papers.php (без id третья и с id четвертая) при запросе "papers" и "papers/любое_число" с возможным завершающим слешем. При таких обращениях строка запроса добавляется к новому адресу.
Наверно все-таки не "/" а "/?" , но в принципе думаю Вы правы, подстановку в этом случае аппчу все равно придется делать, а вот размер .htaccess будет меньше на ~0.00001%.
:)
Так что в свое оправдание могу привести только следующее:
1. как спросили так и ответил (в топике было "http://...", я так и сделал, только универсальнее.)
2. с "http://%{HTTP_HOST}" (как мне кажется) более наглядно, что это редирект, а не реврайт (что может быть сомнительно с учетом наличия еще и "R=301")
3. под руку в нужный момент попался кусок кода с "http://%{HTTP_HOST}" (скопировал, вставил, подправил под текущие нужды)
Я же не знал, что у Вас есть в .htaccess еще реврайты на index.php.
Поставьте перед новым правилом условие, чтобы оно не примерялось к адресам, к которым уже применен реврайт, чтобы стало так:
RewriteCond %{ENV:REDIRECT_STATUS} ^$RewriteRule ^index\.php$ http://%{HTTP_HOST}/? [R=301,L]
Тогда, чтобы сделать редирект, убрав из адреса index.php и строку запроса (все что после ?) сделайте так:
RewriteRule ^index\.php$ http://%{HTTP_HOST}/? [R=301,L]
по этому правилу например
test.ru/index.php?тут_что_угодно
переадресуется на
test.ru/
Angelys, редирект
test.ru/?тут_все_что_было_после_знака_вопроса
делается проще:
RewriteRule ^index\.php$ http://%{HTTP_HOST}/ [R=301,QSA,L]
Если хотите обработать тем же правилом и вложенные каталоги, а не только корневой, то можно так
RewriteRule ^(.*)index\.php$ http://%{HTTP_HOST}/$1 [R=301,QSA,L]
test.ru/folder/index.php?тут_что_угодно
test.ru/folder/?тут_все_что_было_после_знака_вопроса