Guest User

Untitled

a guest
Feb 7th, 2019
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.09 KB | None | 0 0
  1. $db_host = 'host';
  2. $db_user = 'login';
  3. $db_pass = 'pass';
  4. $db_name = 'vote';
  5. $encoding = 'utf8';
  6. $table = 'tabl stat';
  7.  
  8. // ссылка на сбор статистики
  9. $file = 'http://site.ru/';
  10. $vote = 2; //количество бонусов
  11. $vip_vote= 4; //количество бонусов 2
  12.  
  13. try {
  14. $dbh = new PDO("mysql:dbname={$db_name};host={$db_host}", $db_user, $db_pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES '{$encoding}'"));
  15.  
  16. // проверяем, есть ли у нас уже статистика в таблице
  17. $row = $dbh->query("SELECT MAX(`vote_id`) FROM `{$table}`")->fetch(PDO::FETCH_NUM);
  18. // если есть, то запоминаем максимальный ID
  19. $last_id = empty($row) ? 0 : $row[0];
  20.  
  21. $rows = 0;
  22. if (($fp = fopen($file, "r")) !== false) {
  23. while (($data = fgetcsv($fp, 1000, "t")) !== false) {
  24. // если в строке не 5 элементов или ID уже есть, то пропускаем строку
  25. if (count($data) != 5 || $last_id >= $data[0])
  26. continue;
  27.  
  28. $fields = array(
  29. ':vote_id' => $data[0],
  30. ':date' => date('Y-m-d H:i:s', strtotime($data[1])),
  31. ':ip' => $data[2],
  32. ':nick' => $data[3],
  33. ':votes' => $data[4],
  34. );
  35.  
  36. // сохраняем строку в таблицу
  37. $sth = $dbh->prepare("INSERT INTO `{$table}` (`vote_id`, `date`, `ip`, `nick`, `votes`) VALUES (:vote_id, :date, :ip, :nick, :votes)");
  38. if ($sth->execute($fields))
  39. $rows ++;
  40. else
  41. var_dump($sth->errorInfo());
  42. }
  43. fclose($fp);
  44. echo "Добавлено {$rows} записей <br>";
  45. } else {
  46. echo 'Ошибка открытия файла';
  47. }
  48.  
  49. } catch (PDOException $e) {
  50. echo 'Ошибка подключения: ' . $e->getMessage();
  51. }
  52.  
  53. $CheckAcc1 = mysqli_query($link, "SELECT username FROM account WHERE username = '$VoteChar'");
  54. $CheckAcc = mysqli_num_rows($CheckAcc1);
  55.  
  56. // Проверяем аккаунт
  57. if ($CheckAcc > 0) {
  58. // Статус
  59. $AccountID1 = mysqli_query($link, "SELECT username FROM account WHERE username = '$VoteChar'");
  60. $AccountID = mysqli_fetch_row($AccountID1);
  61.  
  62. // Проверяем голоса
  63. $CheckVote1 = mysqli_query($link, "SELECT * FROM stat WHERE vote_id = '$VoteID' AND date = '$VoteTime' AND nick = '$VoteChar' AND votes = '$VoteType';");
  64. $CheckVote = mysqli_num_rows($CheckVote1);
  65.  
  66. // Тип голоса
  67. if ($VoteType == 2) {
  68. $RewardCoins = $vip_vote;
  69. }
  70. else {
  71. $RewardCoins = $vote;
  72. }
  73.  
  74. // Выдача баллов
  75. if ($CheckVote <= 0) {
  76. $Query = mysqli_query($link, "UPDATE account SET vp = vp + $RewardCoins WHERE username = '$AccountID[0]'");
  77. }
  78. }
Add Comment
Please, Sign In to add comment