Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Увеличение значение на 1
 
 автор: neadekvat   (01.05.2009 в 20:47)   письмо автору
 
 

Доброго времени суток
Подскажите, пожалуйста, как делается такая штука, сам никак додуматься не могу: допустим, есть рейтинг новости (для упращения - пусть будут две ячейки: 'plus' для + к рейтингу и 'minus' для "-") так вот, можно ли сделать такой запрос к бд (когда пользователь нажимает + или - ), чтобы количество в этих ячейках увеличивалось на 1, без запроса.
То есть на данный момент я вижу только такой выход - запрос числа, уже имеющегося в бд, увеличение его на 1, и запись получившегося в бд, но если одноврменно два человека проголосуют за +, то поднимится он не на 2, а на 1 голос по причине того, что они увеличивают одно и то же число.
Пардон, что так по-деревенски объясняю. По-другому не могу

  Ответить  
 
 автор: Trianon   (01.05.2009 в 20:55)   письмо автору
 
   для: neadekvat   (01.05.2009 в 20:47)
 

UPDATE news 
  SET rating = rating+1
WHERE id = $id

Ы?

  Ответить  
 
 автор: devzorg   (01.05.2009 в 20:58)   письмо автору
 
   для: Trianon   (01.05.2009 в 20:55)
 

))

  Ответить  
 
 автор: devzorg   (01.05.2009 в 20:58)   письмо автору
 
   для: neadekvat   (01.05.2009 в 20:47)
 

update таблица set hits=hits+1 where id=1

  Ответить  
 
 автор: neadekvat   (01.05.2009 в 21:14)   письмо автору
 
   для: neadekvat   (01.05.2009 в 20:47)
 

Вы точно уверены?
Судя по коду, значение rating и hits установится в бд как "rating+1" и "hits+1", если, конечно, не установить, что ячейка должна быть числовой, в любом случаи, я сомневаюсь в работоспособности данного кода. Обоих.

  Ответить  
 
 автор: Trianon   (01.05.2009 в 21:24)   письмо автору
 
   для: neadekvat   (01.05.2009 в 21:14)
 

>Вы точно уверены?
Это не вопрос веры.

>Судя по коду, значение rating и hits установится в бд как "rating+1" и "hits+1",

Я хоть где-то нарисовал апострофы? Или может это devzorg сделал?

>если, конечно, не установить, что ячейка должна быть числовой,

А какой она должна быть, если Вы держите там числовые значения?!
И кстати, если она не будет числовой, нормальный SQL-сервер Вас пошлет.
А mysql (не настроенный на режим ansi-совместимости) вероятно , таки посчитает инкремент.


>в любом случаи, я сомневаюсь в работоспособности данного кода. Обоих.

Так проверьте!

  Ответить  
 
 автор: neadekvat   (01.05.2009 в 23:20)   письмо автору
 
   для: Trianon   (01.05.2009 в 21:24)
 

Пробовал до того, и, будучи умником, расставил все кавычки и апострофы.

Пардон, вся правда - ваша.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования