Mysql, если дублирует УНИКАЛЬНОЕ КЛЮЧЕВОЕ обновление Хиты

Мой простой PHP-скрипт для вставки ключевого слова. Если ключевое слово уже завершено, мне нужен счетчик обновлений .. Как я могу это сделать? если ключевое слово «образец», если оно уже есть в БД, мне нужно обновить «хиты» = 2, если опять то же ключевое слово «хиты» = 3

CREATE TABLE IF NOT EXISTS `search` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`keyword` varchar(255) NOT NULL,
`hits` varchar(255) NOT NULL,
`date` datetime DEFAULT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `keyword` (`keyword`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=22 ;

мой php:

$raw_results = mysql_query("INSERT INTO search (keyword, date) VALUES    ('$keyword', '$date' )");

1

Решение

Вы пытались использовать ON DUPLICATE KEY?

INSERT INTO table (columns)
VALUES (values)
ON DUPLICATE KEY UPDATE hits = hits + 1

потому что у вас есть уникальный ключ по ключевому слову, он будет увеличивать попадания на 1

ПРИМЕЧАНИЕ:

не используйте PHP mysql_ * осуждается API у него много вопросов безопасности. Вместо этого вы должны использовать параметризованные запросы с mysqli_ * или же PDO

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector