Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2010, 22:20   #1
kpachbiu
взагрузке.рф
Форумчанин
 
Аватар для kpachbiu
 
Регистрация: 13.06.2010
Сообщений: 117
Радость Виджет комментариев vkontakte

Цитата:
Вы можете хранить количество комментариев для каждой статьи на своём сервере, чтобы, например, сортировать статьи по популярности.
В коллбек-функцию onChange передаётся 4 параметра: num, last_comment, date, sign

■num - количество комментариев
■last_comment - текст последнего комментария
■date - текущая дата в формате ISO 8601 (например, 2004-02-12T15:19:21+00:00)
■sign - контрольная сумма md5 от конкатенации 4х строк: api_secret, date, num, last_comment. В языке php может быть получена с помощью md5($api_secret.$date.$num.$last_co mment).

Защищенный секрет api_secret Вы можете узнать при редактировании приложения на вкладке Редактирование → Настройки, Поле "Защищенный ключ".
В большинстве случаев, можно игнорировать последние 2 параметра и обрабатывать только первые два. В случае необходимости, можно проверять корректность контрольной суммы.
PHP код:
<script type="text/javascript">
VK.Widgets.Comments("vk_comments", {limit30width"500"autoPublish0onChange"num_comment"});
</script> 
Помогите:
1) Как понять "В коллбек-функцию onChange передаётся 4 параметра..."?
2) Как написать эту функцию, чтобы значение num записывалось в БД MySQL?
Взагрузке.рф - Файлы для людей
Ищу художника или веб-дизайнера для создания браузерной онлайн игры! icq 340-289-851
kpachbiu вне форума Ответить с цитированием
Старый 28.10.2010, 15:09   #2
kpachbiu
взагрузке.рф
Форумчанин
 
Аватар для kpachbiu
 
Регистрация: 13.06.2010
Сообщений: 117
Радость

up..реально чтоли никто не знает/не разбирается?

Вот документация - http://vkontakte.ru/pages.php?o=-1&p...B8%D0%B5%D0%B2

п.с. до сих пор не могу разобраться
Взагрузке.рф - Файлы для людей
Ищу художника или веб-дизайнера для создания браузерной онлайн игры! icq 340-289-851

Последний раз редактировалось kpachbiu; 28.10.2010 в 15:12.
kpachbiu вне форума Ответить с цитированием
Старый 28.10.2010, 19:45   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

1)очень просто, ваша функция должна принять 4-ре параметра.
2)честно, я хз как из JS
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.10.2010, 12:24   #4
Lohmatiyy
Пользователь
 
Регистрация: 29.10.2010
Сообщений: 57
По умолчанию

Цитата:
Как понять "В коллбек-функцию onChange передаётся 4 параметра..."
Делаете вызов функции из этого параметра, то бишь что типа onChange: funkzia(num, last_comment, date, last_comment), и ни в коем случае не заключаете вызов функции в кавычки

Цитата:
Как написать эту функцию, чтобы значение num записывалось в БД MySQL
Делаем php скрипт, в котором прописываем запрос к БД, об это здесь http://http://www.php.su/mysql/.

А из функции делаем запрос к этому скрипту через xmlhttprequest, в параметрах передаем num, об этом здесь http://xmlhttprequest.ru/

А вообще за такие дурацкие вопросы закопал бы заживо
Lohmatiyy вне форума Ответить с цитированием
Старый 31.10.2010, 02:25   #5
kpachbiu
взагрузке.рф
Форумчанин
 
Аватар для kpachbiu
 
Регистрация: 13.06.2010
Сообщений: 117
Радость

Спасибо всем!

Вот может кому пригодится-

страница с комментариями:

PHP код:
<div id="vk_comments"></div>

<
script type="text/javascript">
VK.Widgets.Comments("vk_comments", {limit30width"500"autoPublish0onChangeaddComment});    

function 
getXmlHttp(){
  var 
xmlhttp;
  try {
    
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (
e) {
    try {
      
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (
E) {
      
xmlhttp false;
    }
  }
  if (!
xmlhttp && typeof XMLHttpRequest!='undefined') {
    
xmlhttp = new XMLHttpRequest();
  }
  return 
xmlhttp;
}

function 
addComment(numlast_commentdatesign) {
var 
str=document.URL;
var 
patt=/id=\d/i
var result=patt.exec(str); // из URL получаем id новости
    
var xmlhttp getXmlHttp()
xmlhttp.open('GET''comments.php?num='+num+'&'+result+'r='+Math.random(), true);
xmlhttp.onreadystatechange = function() {
  if (
xmlhttp.readyState == 4) {
     if(
xmlhttp.status == 200) {
       
//alert(xmlhttp.responseText);
         
}
  }
};
xmlhttp.send(null);
    }                
</script> 
обработчик ajax comments.php
PHP код:
<?php
require("inc/db_config.php");

// Защита от XSS
function _filter$var $sql 0) {
 
    
$var strip_tags($var);
    
$var=str_replace ("\n"," "$var);
    
$var=str_replace ("\r",""$var);
    
$var htmlentities($var);
    if ( 
$sql == 1) { 
        
$var mysql_real_escape_string($var);
    }
    return 
$var;
}

$id=_filter($_GET['id'],1);
$num=_filter($_GET['num'],1);
echo
"$id $num";

mysql_query("UPDATE `content` SET `comment`='".$num."' WHERE `id`='".$id."'") or die(mysql_error());

?>
Взагрузке.рф - Файлы для людей
Ищу художника или веб-дизайнера для создания браузерной онлайн игры! icq 340-289-851
kpachbiu вне форума Ответить с цитированием
Старый 10.11.2010, 22:49   #6
alexnech
Новичок
Джуниор
 
Регистрация: 10.11.2010
Сообщений: 1
По умолчанию

Подскажите, пожалуйста, нубу как это теперь к блогу на Wordpress прикрутить. Мне нужно, чтобы какая-то функция выводила количество комментов, а дальше я мог ее уже использовать для внедрения в шаблон оформления. Готов даже вознаграждение небольшое выплатить за помощь
alexnech вне форума Ответить с цитированием
Старый 04.01.2011, 16:10   #7
Chiliec
 
Регистрация: 04.01.2011
Сообщений: 4
По умолчанию

Цитата:
Сообщение от kpachbiu Посмотреть сообщение
Вот может кому пригодится
Спасибо, но что-то не работает $id у меня пустой
И еще такой вопрос - функция mysql UPDATE только обновляет значения, но не создает их? то есть их нужно еще предварительно создать?

Присоединяюсь к alexnech, тоже готов заплатить за готовую функцию к WP, устал уже париться
Chiliec вне форума Ответить с цитированием
Старый 16.01.2011, 01:02   #8
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от Chiliec Посмотреть сообщение
апчик
штрафчик .
SkyM@n вне форума Ответить с цитированием
Старый 17.01.2011, 18:04   #9
kpachbiu
взагрузке.рф
Форумчанин
 
Аватар для kpachbiu
 
Регистрация: 13.06.2010
Сообщений: 117
Радость

alexnech, Chiliec пишите в icq помогу.
Взагрузке.рф - Файлы для людей
Ищу художника или веб-дизайнера для создания браузерной онлайн игры! icq 340-289-851
kpachbiu вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа комментариев в WordPress amdbodia WordPress и другие CMS 3 25.09.2010 15:09
Вставить скрипт комментариев на сайт zox Фриланс 2 22.09.2010 00:11
Яндекс Виджет для Форума программистов Alar Свободное общение 12 01.07.2010 22:20
Изменить дату комментариев на сайте GaJIbI4 Помощь студентам 0 16.12.2009 11:15
Добавление комментариев Amen PHP 9 20.10.2009 19:34