- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
Есть такая строка в коде:
<a href="javascript:rate_news(5, 250);void(0);"><b>Оценить новость</b></a>
Сама вызываемая функция rate_news выглядит так:
<script>
function rate_news(golos, idnews) {
$('vote_check'+idnews).style.display="none";
$('voteLoader'+idnews).style.display="block";
new Ajax.Request("rate.php?newsvote=" + idnews + "&rating=" + golos, {
method: 'post',
parameters: "newsid=" + idnews + "&mark=" + golos,
onSuccess: function(transport) {
$('voteLoader'+idnews).style.display="none";
$('vote_name'+idnews).innerHTML="<font style=font-size:100%>Новость успешно оценена</font>";
}
});
}
</script>
Работает так: при нажатии на ссылку "Оценить новость" запускается функция java-скрипта rate_news, которая, в свою очередь, вызывает php-скрипт site.ru/rate.php После этого появляется сообщение - "Новость успешно оценена". Если после этого перегрузить страницу, то ссылка "Оценить новость" исчезает, т.е. повторная оценка новости невозможна (фиксация по IP).
Проблема в том, что прокси-сервер запрещает выполнение java-скриптов, поэтому нажатие на ссылку "Оценить новость" ни к чему не приводит. Хочется сделать так, чтобы при нажатии на ссылку "Оценить новость" сразу запускался php-скрипт c необходимыми параметрами. Пробовал по-разному:
site.ru/rate.php?newsvote=250&rating=5
site.ru/rate.php?newsid=250&mark=5
site.ru/rate.php?newsvote=250&rating=5&newsid=250&mark=5
но никак не получается, уже не знаю, какте еще варианты перебрать. Знаю точно, что есть какой-то рабочий вариант подстроки, но какой - не пойму. Признаком правильного варианта является то, что после отправки команды и повторной перегрузки страницы, ссылка "Оценить новость" исчезает, т.е. голос учтен.
Может, кого-то подскажет?
Как может прокси запрещать выполнение java скриптов? Ведь они выполняются в браузере на локальной машине. Вы хотите накрутить свою новость в какой-то социалке? Видимо там грмотно сделана защита от накруток - не плюсует с публичных прокси или вы используете открытые прокси + ваш реальный IP заносится в список уже проголосовавших.
Как может прокси запрещать выполнение java скриптов? Ведь они выполняются в браузере на локальной машине. Вы хотите накрутить свою новость в какой-то социалке? Видимо там грмотно сделана защита от накруток - не плюсует с публичных прокси или вы используете открытые прокси + ваш реальный IP заносится в список уже проголосовавших.
Это корпоративный прокси. Не знаю, как он устроен, но ни на одной машине ява-скрипт не выполняется, хотя в браузерах все включено. Код директа, к примеру, тоже нигде не отображается.
Нужна не ссылка а форма.
У вас написано
вам нужно передать 2 параметра методом POST скрипту rate.php
newsvote и rating
нужно вокруг
сделать
Или передавать методом GET (как передаете вы), но тогда переменные нужно принять GET`ом в скрипте rate.php.
Но никак не пойму как прокси может блокировать JS и зачем это делать???
PS теперь понимаю откуда в статистике посещений сайта появляется 1% отключенных JS
PPS если нид хелп - в личку, помогу. Тут вопрос пары строк.
если грешите на прокси, проверьте сначала на локальной машине...
теперь на счёт кода:
я так понимаю вы юзаете js-фрэймворк prototype ?
конечно простите за не скромность, но ваш код ужасен...
Надо так:
<script type="text/javascript">
<!--//
function rate_news(golos, idnews) {
/*
* глядя на 2-е строчки ниже, я завис... вам не кажется, что они здесь ни к чему? По крайней мере обе
* В любом случае, если Вы юзаете prototype то лучше делать по другому, в комментариях написал как
*/
$('vote_check'+idnews).style.display="none"; // $('vote_check'+idnews).hide();
$('voteLoader'+idnews).style.display="block"; // $('vote_check'+idnews).show();
/**
* Теперь запрос, проще всего передать GET методом, и в php скрипте получать с помощью супер глобального массива $_GET
*/
new Ajax.Request("rate.php?newsvote=" + idnews + "&rating=" + golos, {
method: 'get', // как уже заметили post метод тут не обязателен
onSuccess: function(transport) {
$('voteLoader'+idnews).hide();
$('vote_name'+idnews).innerHTML='Новость успешно оценена';
}
});
}
//-->
</script>
если грешите на прокси, проверьте сначала на локальной машине...
теперь на счёт кода:
я так понимаю вы юзаете js-фрэймворк prototype ?
конечно простите за не скромность, но ваш код ужасен...
Надо так:
<script type="text/javascript">
<!--//
function rate_news(golos, idnews) {
/*
* глядя на 2-е строчки ниже, я завис... вам не кажется, что они здесь ни к чему? По крайней мере обе
* В любом случае, если Вы юзаете prototype то лучше делать по другому, в комментариях написал как
*/
$('vote_check'+idnews).style.display="none"; // $('vote_check'+idnews).hide();
$('voteLoader'+idnews).style.display="block"; // $('vote_check'+idnews).show();
/**
* Теперь запрос, проще всего передать GET методом, и в php скрипте получать с помощью супер глобального массива $_GET
*/
new Ajax.Request("rate.php?newsvote=" + idnews + "&rating=" + golos, {
method: 'get', // как уже заметили post метод тут не обязателен
onSuccess: function(transport) {
$('voteLoader'+idnews).hide();
$('vote_name'+idnews).innerHTML='Новость успешно оценена';
}
});
}
//-->
</script>
Если вам надо по каким-то причинам, указанным из космоса, отправлять подобный запрос с помощью POST метода, нужно сделать так:
new Ajax.Request("rate.php", {
method: 'post', // как уже заметили post метод тут не обязателен
parameters: {newsvote: idnews, rating: golos},
onSuccess: function(transport) {
$('voteLoader'+idnews).hide();
$('vote_name'+idnews).innerHTML='Новость успешно оценена';
}
});
Поясню - я не имею доступа к этому скрипту. Поэтому нужно решить указанную проблему внешним путем, например, через подбор строки в браузере и т.п.
Кто первым сообразит, как это сделать, получит 20 вмз (или 500 я.д.)
Подробнее за тех.заданием прошу в личку. Актуально сегодня, максимум завтра.
dbond80, enthusiast award ? :D