Как создать «уже проголосовали» в PHP - PullRequest
0 голосов
/ 25 апреля 2019

Я получаю код для голосования игроков, но я могу голосовать за других игроков

index.php

    if( @$_GET['vote'] == 'err' ) {
         $output.= "            <div class='notification error closeable'>
                <p><span>Info!</span> Poti vota serverul odata la 24 de ore.</p>
            </div>";
    }
    if( @$_GET['vote'] == 'thanks' ) {
         $output.= "<div class='notification success closeable'>
                <p><span>Info!</span> Multumim pentru vot, votul tau a fost adaugat cu success.</p>
            </div>";
    }

voice.php

<?php
require "lgsl_files/lgsl_class.php";
lgsl_database();
$id = intval( @$_GET['id']);
if( $_GET['add'] == '+1' ) {
     $rating_status = ' + 1 ';
}
elseif( $_GET['add'] == '-1' ) {
     $rating_status = ' - 1 ';
}
else {
     $rating_status = '';
}
$result = mysql_query("SELECT * FROM voting WHERE server_id = '{$id}' AND vote_ip = '{$_SERVER['REMOTE_ADDR']}' AND time > '" . ( time() - ( 60 * 60 * 24 ) ) . "'");
if( !mysql_num_rows( $result ) ) {
     $result = mysql_query("SELECT * FROM lgsl WHERE id = '{$id}'");
     if( mysql_fetch_array( $result ) ) {
          mysql_query( "INSERT INTO voting VALUES ( NULL, '{$id}', '{$_SERVER['REMOTE_ADDR']}', " . time() . ")" );
          mysql_query( "UPDATE lgsl SET rating = rating {$rating_status} WHERE id = '{$id}'" );
     }
}
else {
     @header( "Location: vot_server_respins.html" );
     exit;
}
@header( "Location: vot_server_adaugat.html" );
?>

в lgsl_class.phpбаза данных и скрипты для игрока статистики

Table Voting.sql

CREATE TABLE `voting` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `server_id` int(10) NOT NULL,
  `vote_ip` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
  `time` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=469 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

Пожалуйста, мне нужна очень большая помощь

1 Ответ

0 голосов
/ 25 апреля 2019

Вы должны сохранить куки после первого голосования и проверять его при каждом запросе.

...