Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.01.2014, 16:13
Аватар для Fooog
Новичок на форуме
Отправить личное сообщение для Fooog Посмотреть профиль Найти все сообщения от Fooog
 
Регистрация: 05.01.2014
Сообщений: 5

Счетчик нажатий на кнопку
Реально ли для wordpress написать вот что... Как правильно подойти к этому...?
Нажимаешь на кнопку, она тебе выводит текст, а то что на кнопку было произведено нажатие отправляется в бд или куда то в файл где к общему числу +1 добавляется.
Вероятно стоит подходить к этому реализацией через javascript. Посоветовали подумать в сторону jquery ajax
Идеальный вариант, это что бы был общий файл-таблица на которой будет выведен список по типу:
№ 143 - 1509 нажатий
№ 144 - 148 нажатий
№ 145 - 735 нажатий
То есть кнопка будет находится в разных записях и каждая иметь свой уникальный текст, который будет показан после нажатия.
Может есть подобные готовые решения?
Нашел кое что, что практически идеально подходит под требование, но немного не то... http://wp-kama.ru/id_430/plagin-dlya...k-counter.html
И вот ещё тематическую статью нашел: http://lifeexample.ru/php-primeryi-s...wordpress.html

Ниже инфа моих попыток решить задачу. Вполне вероятно что я на ошибочном пути и всё что ниже можно не учитывать, а нужно двигаться совершенно в другом направлении.
Относительно нашел решение установкой плагина Kama’s Click Counter и скриптом который идеально подходит для задачи:

<script type="text/javascript">// <![CDATA[
function showTooltip()
{
var myDiv = document.getElementById('tooltip');
var myLink = document.getElementById('link');
if(myDiv.style.display == 'none'){
myDiv.style.display = 'block';
myLink.style.display = 'none';
} else {
myDiv.style.display = 'none';
}
return false;
}
// ]]></script>
<a class="count" href="javascript:;" onclick="showTooltip()" id="link">Показать </a>
<div id="tooltip" style="display: none;">Текст текст текст текст текст</div>


Но есть проблема. Класс которой отвечает за запись +1 клик в админку (class="count") делает свое дело. Но при нажатии, помимо того что скрипт показывает нужный текст, страница переходит по ссылке ?kcccount=javascript:;!p=302 выдавая ошибку:

Цитата:
Ошибка искажения содержимого

Страница, которую вы пытаетесь просмотреть, не может быть показана, так как была обнаружена ошибка при передаче данных.

Пожалуйста, свяжитесь с владельцами веб-сайта и проинформируйте их об этой проблеме.
p=302 id страницы где установлен код.

Интересна реализация через Kama’s Click Counter (очень успешно для задачи подходит этот плагин)
Но когда я добавляю класс count то код преобразуется в ссылку (href="http://site.ru?kcccount=javascript:;!p=302) вместо того что бы просто быть href="javascript:;" а так как это становится ссылкой, меня соответственно перебрасывает.
Проблема, что только лишь если проходишь по ссылке которую создает класс count, (в данном примере это http://site.ru?kcccount=javascript:;!p=302) происходит запись в базу +1 клик. Может как то можно реализовать, что бы count создавал нужный запрос но без редиректа?
_______________________

От ошибки избавился удалив кусок в файле плагина, то есть:

# перенаправляем
		$_url = explode('!p=', $url);
		$url = $_url[0];
		
		if ($is_IIS) {
			header("Refresh:0;url=$url");
		} else {
			if( !headers_sent() ){
				header("Location: $url");
				header("Status: 303");
			} else {
				print "<script>location.replace(\"$url\");</script>";
			}
		}

		exit;


но это проблему не решает. Ссылка всё равно остается активной и помимо того, что открывает нужный текст, перебрасывает на http://site.ru?kcccount=javascript:;!p=302

Сам файл плагина отвечающий за вышеперечисленные действия:
Посмотреть в txt: http://yadi.sk/d/-8d57sQpFUWGM
php файл: http://yadi.sk/d/lnYojg1iFUb5y

Последний раз редактировалось Fooog, 05.01.2014 в 16:15.
Ответить с цитированием
  #2 (permalink)  
Старый 05.01.2014, 16:37
Аватар для Fooog
Новичок на форуме
Отправить личное сообщение для Fooog Посмотреть профиль Найти все сообщения от Fooog
 
Регистрация: 05.01.2014
Сообщений: 5

Старался изложить всё максимально подробно, что бы было легче ответить
Если кратко, то к прочтению только первая честь сообщения
Ответить с цитированием
  #3 (permalink)  
Старый 05.01.2014, 20:02
Аватар для Fooog
Новичок на форуме
Отправить личное сообщение для Fooog Посмотреть профиль Найти все сообщения от Fooog
 
Регистрация: 05.01.2014
Сообщений: 5

Нашел немного инфы на эту тему:
http://wordpress.org/support/topic/a...te-wp-database
http://wordpress.org/plugins/ajax-hits-counter/
http://wordpress.stackexchange.com/q...unter-meta-box

Мог бы кто то это всё оптимизировать?
В первом примере так понимаю парень подключает к постам php. Хотелось бы обойтись без этого
Вот чего ещё нашел:
Подсчет количества кликов мыши на объект в jquery
почти законченный код
и вот: http://snipcode.ru/catalog.html?snipid=16

Последний раз редактировалось Fooog, 05.01.2014 в 20:21.
Ответить с цитированием
  #4 (permalink)  
Старый 06.01.2014, 02:27
Аватар для Fooog
Новичок на форуме
Отправить личное сообщение для Fooog Посмотреть профиль Найти все сообщения от Fooog
 
Регистрация: 05.01.2014
Сообщений: 5

Всем спасибо за помощь
Решение:
Юзаем тему: http://zarabotat-na-sajte.ru/uroki-h...po-ssilke.html
Таким вот образом выводим текст:
<a href="javascript:;" id="link" onclick="setrate(2); showTooltip()"> Показать </a></p>
<div id="tooltip" style="display: none;">Тут текст текст текст текст</div>

Последний раз редактировалось Fooog, 06.01.2014 в 02:30.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Показать кнопку Alex57B Элементы интерфейса 1 20.11.2013 01:39
Количество нажатий на кнопку Vasy Общие вопросы Javascript 8 15.03.2013 21:21
Как вывести счетчик посещений на AJAX? CrossFire Элементы интерфейса 0 13.03.2013 13:19
добавить счетчик в счетчик dimon76 Events/DOM/Window 1 28.06.2011 23:06
Как сделать так, чтобы JS при нажатии на кнопку не выполняла запрос со страницы. JSProgrammer Элементы интерфейса 3 18.05.2010 20:18