это для мускула ошибка, пых это пропустит
Ясно значит для числе можно и так ' а для текста нужно "' !
Fenix_61, если ты запрос пишешь в двойных кавычках , то
" ..... ' " . $a . " ' " .... "
если в одинарных, то
' ..... " ' . $a . ' " ....... '
класс готов
class Vote {
public $type;
public $user;
function __construct($user, $type) {
$this->type = $type;
$this->user = $user;
$this->check();
}
public function check() {
if (isset($_GET['voteadd']) && isset($_GET['voteid'])) {
$this->add(intval($_GET['voteid']));
}
}
public function add($pid) {
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `vote` WHERE `user`=" . $this->user . " AND `vote`=" . intval($pid) . " AND `type`='" . $this->type . "'"), 0) > 0) {
mysql_query("DELETE FROM `vote` WHERE `user`=" . $this->user . " AND `vote`=" . intval($pid) . " AND `type`='" . $this->type . "' LIMIT 1");
} else {
mysql_query("INSERT INTO `vote` SET `user`=" . $this->user . " , `vote`=" . intval($pid) . " , `type`='" . $this->type . "'");
}
if (mysql_affected_rows()>0) {
ob_end_clean();
header('Location: ' . $_SERVER['HTTP_REFERER']);
ob_end_flush();
exit;
}
}
public function view($post) {
return '<div>' . mysql_result(mysql_query("SELECT COUNT(*) FROM `vote` WHERE `user`=" . $this->user . " AND `vote`=" . intval($post) . " AND `type`='" . $this->type . "'"), 0) . ' <a href="?voteadd&voteid=' . intval($post) . '">мне нравиться</a></div>';
}
function __destruct() {
foreach ($this as $key => $value) {
unset($this->$key);
}
}
}
в модуле после ядра добавить
#include('../incfiles/classes/vote.php'); // если не работает автолоад, раскоментировать
$vote = new Vote($user_id, 'forum_post');
в вывод
echo $vote->view($res['id']);
таблица
CREATE TABLE IF NOT EXISTS `vote` (
`user` int(11) NOT NULL,
`vote` int(11) NOT NULL,
`type` varchar(32) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
$vote = new Vote($user_id, 'forum_post');
где forum_post - тип кнопки, пример для форума, постов,
например дял новостей можно придумать тип news
ООО, эт я удачно в тему попал
Ща соображу..
это я так понимаю в поле voite будет накапливатся колл-во нажатий ?
Fublin, просто будут копиться записи с номером поста , номером юзера и типом
ramzes, проблемы синтаксиса расшифровывали