кнопка повысить рейтинг

#1 5 сентября 2010 в 21:34
Вот кнопочку повысить рейтинг сделал бы кто. Гатов скинутся на разработку))))) ну типо на профиле пользователя есть кнопочка быстрое поощрения кнопка есть у модераторов например сайта… админов. права выставил кто может ей пользоваться. А на кнопочке повысить рейтинг на пример на 50))))))))))))))) Не плохо было бы внедрить смс и веб мани… кто за?
На вопрос зачем… отвечаю. рейтинг можно привязать к валюте сайта. За рейтинг можно скачивать файлы отправлять подарки и так далее. Например пользователь не хочет участвовать в жизни сайта на зарабатывания рейтинга… а вот скачать файл за 50 рейтинга или отправить подарок за 50 рейтинга уж очень хочет. А рейтинга у него 0.Вот тут и пригодится кнопочка
#2 5 сентября 2010 в 21:45
По поводу монетизации через смс затруднюсь ответить. Это нужно выбрать sms билинговую систему и непосредственно под нее разрабатывать. Но вот такую простую кнопочку, которую видит администратор и по желанию может повысить рейтинг пользователя вручную могу показать как сделать.

Кнопка будет под аватаром возле кнопки наградить. При нажатии всплывает окно, там вводим количество баллов, нажимаем ОК и все. Рейтинг поднят…
#3 5 сентября 2010 в 21:49

Шаг 1.

В файле шаблона com_users_profile.tpl

В разделе

  1. {* ==========меню в профиле=========== *}
  2. ...........
  3. ..........
  4. ........
После строчки

  1. <td><a href="/users/{$usr.id}/giveaward.html" title="{$LANG.TO_AWARD}"><img src="/components/users/images/profilemenu/award.gif" border="0"/></a></td>
Добавим такую:

  1. <td><a href="javascript: addRating()" title="Поднять рейтинг"><img src="/components/users/images/profilemenu/rating.gif" border="0"/></a></td>
И само собой в папку components/users/images/profilemenu/ положим картинку rating.gif

Шаг 2.

В файле components\users\js\profile.js

добавим функцию:

  1. function addRating(){
  2.  
  3. var rating = prompt('Количество баллов:');
  4. var user_id = $('input[@name=user_id]').val();
  5. if (rating) {
  6. $.post('/components/users/ajax/rating.php', {'rating': rating, 'user_id': user_id}, function(data){ alert(data); });
  7. }
  8. }
  9.  

Шаг 3.

Откроем блокнот.
Создадим текстовый файл с таким содержанием:

  1. <?php
  2.  
  3.  
  4. define("VALID_CMS", 1);
  5. define('PATH', $_SERVER['DOCUMENT_ROOT']);
  6. define('HOST', 'http://' . $_SERVER['HTTP_HOST']);
  7.  
  8. include(PATH.'/core/cms.php');
  9.  
  10. $inCore = cmsCore::getInstance();
  11.  
  12. $inCore->loadClass('config'); //конфигурация
  13. $inCore->loadClass('db'); //база данных
  14. $inCore->loadClass('user');
  15.  
  16. $inDB = cmsDatabase::getInstance();
  17. $inUser = cmsUser::getInstance();
  18.  
  19. $inUser->update();
  20.  
  21.  
  22. $points = $inCore->request('rating', 'int', '');
  23. $user_id = $inCore->request('user_id', 'int', '');
  24. if ($points>1000){ $points = 1000; } // больше 1000 поднять за один раз нельзя!!!
  25. if ($inCore->userIsAdmin($inUser->id) && $points>0){
  26. $sql = "UPDATE cms_users
  27. SET rating = rating + {$points}
  28. WHERE id = {$user_id}";
  29.  
  30. $inDB->query($sql);
  31. echo 'Рейтинг успешно изменен!';
  32. } else { echo 'Ошибка!!!';}
  33.  
  34. return;
  35.  
  36. ?>
И СОХРАНИМ ЕГО КАК rating.php

Теперь закинем его в папку components\users\ajax\



Если ровными ручками делать, должно получиться с первого раза.
Исходники не даю. Учимся переписывать правильно… laugh
#4 5 сентября 2010 в 22:21
решение не плохое))))но чуток не то… а для начала не плохо)))
#5 5 сентября 2010 в 22:25
Просто в меню пользователей и так куча иконок… под аватаром… немного не доработка… можна было сделать как текстом так и иконками. Постоянно пишут новые пользователи где менять аватар… где настройки… даже пришлось внятно в вопросах и ответах писать… что кнопка настройки находится под аватаром roflиконка колесико
#6 5 сентября 2010 в 22:58

под аватаром… немного не доработка… можна было сделать как текстом так и иконками


Эту кнопку видит только администратор. Если и он не знает где меню находится — это печально cry
#7 5 сентября 2010 в 23:08
ну я понял что это для админа))
#8 6 сентября 2010 в 04:12

Саш урок в действие.Получилось вот как.

#9 6 сентября 2010 в 13:19
Ну и что не так? Чтот я не понял. Не нравится???
#10 6 сентября 2010 в 13:53
Нет… всё супер… то что нада
#11 6 сентября 2010 в 21:49
Спасибо, Александр! Полезная плюшка! dance
#12 6 сентября 2010 в 22:02
Блин. Как-то даже скучно… Неужели вы переписывать правильно научились???
#13 7 сентября 2010 в 00:58

Неужели вы переписывать правильно научились???

Александр
Буду говорить за себя. Переписываю правильно в 95% случаев правки кода. 5% — ошибок стараюсь сам же понять, где напортачил. За советом обращаюсь крайне редко, обычно к тому времени появляется много наводящих комментариев😊
Извините за оффтоп
#14 8 сентября 2010 в 19:29
Я кажется не научился(((
Вроде все как написано сделал. Хочу поднять рейтинг на 100


И после нажатия на ОК выскакивает вот такая штука



И рейтинг не увеличивается
помогите кто нибудь!!!
#15 8 сентября 2010 в 19:41
Внимательно читай Александра посты… я сделала как написано и всё работает.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.