Таблица
CREATE TABLE `vote` (
`oid` int(10) unsigned NOT NULL,
`uid` int(10) unsigned NOT NULL,
`type` tinyint(1) unsigned NOT NULL,
PRIMARY KEY(`oid`, `uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8oid - идентификатор объекта
uid - идентификатор пользователя
type - тип голоса (0 - минус; 1 - плюс)
---
Вот код напримере ждона
define('_IN_JOHNCMS', TRUE);
$rootpath = ''; // Если файл не в корне то удалить переменную rootpath и заменить в require ./ на ../
require './incfiles/core.php';
if (!$user_id) {
// Закрываем от гостей
header('Location: ' . core::$system_set['homeurl'] . '/?err');
exit;
}
$message = '';
$is_exists = mysql_result(mysql_query("SELECT COUNT(*) FROM `object_table` WHERE `id` = '" . $id . "'"), 0);
if ($is_exists) {
// Проверяем голосовал ли пользователь
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `vote` WHERE `uid` = '" . $user_id . "' AND `oid` = '" . $id . "'"), 0)) {
$message = 'Вы уже проголосовали';
} else {
// Определяем тип голоса (1 - за; 0 - против)
$type = isset($_GET['type']) && intval($_GET['type']) === 1 ? 1 : 0;
// Голосуем
mysql_query("INSERT INTO `vote` SET `oid` = '" . $id . "', `uid` = '" . $user_id . "', `type` = '" . $type . "'");
$message = 'Ваш голос принят';
}
} else {
// Объект не найден
$message = 'Неверные данные';
}
require './incfiles/head.php';
echo '<div class="menu">' . $message . '</div>';
require './incfiles/end.php';Как то так.