[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: увеличить на 1
MatrixGod
всем привет!

как можно увеличить значение поля на 1? не запрашивая сперва само значение.
mysql_query("UPDATE `users` SET counter = counter+1 WHERE id = $user_id");

не работает. идеи???



Спустя 1 минута, 13 секунд (19.12.2011 - 11:06) inpost написал(а):
Какую ошибку выдаёт? smile.gif Что в mysql_error() ?

Спустя 3 минуты, 41 секунда (19.12.2011 - 11:09) MatrixGod написал(а):
не дает никакой ошибки, просто не увеличивает и все...

Спустя 1 минута, 51 секунда (19.12.2011 - 11:11) inpost написал(а):
MatrixGod
возьми имена таблиц и ячеек в обратные кавычки, переменную приведи к INT.
Можешь для эксперимента свой запрос вставить в PMA, и скрин-шоты выстави тут, чтобы я мог убедиться, что поле INT и оно вправду не задевается. Потому что ты что-то не то говоришь.

Спустя 7 минут, 8 секунд (19.12.2011 - 11:18) MatrixGod написал(а):
inpost
перепроверил. столбик counter в базе инт(11).
взял в образные кавычки. еще раз проверил что написал правильно имена полей - не обновляет!

Спустя 2 минуты, 34 секунды (19.12.2011 - 11:21) MatrixGod написал(а):
хммммм, в PMA апдейтит. почему через пхп нет? странно...

Спустя 5 минут, 19 секунд (19.12.2011 - 11:26) inpost написал(а):
MatrixGod
Ну а код показать, как ты переделал всё? smile.gif

Спустя 8 минут, 37 секунд (19.12.2011 - 11:35) sergeiss написал(а):
А в $user_id точно что-то записано, переменная не пустая?

В любом случае лучше записывать запрос в переменную и уже эту переменную передавать в mysql_query(). В случае ошибки легко вывести и посмотреть, что же ты на самом деле отправлял на сервер.

Спустя 7 минут, 39 секунд (19.12.2011 - 11:42) MatrixGod написал(а):
sergeiss
inpost
мужики, я понял в чем проблема, моя вина. переменная была пуста.
но тогда вот такой вопрос.
ведь у кнопки сабмит может быть свое значение. тоесть:
<input type="submit" name="sbmt" value="5">

тогда в пхп $_POST[sbmt] равен 5 (если форма передает через пост).

а если я делаю с картинкой. тоесть:
<input type="image" name="sbmt" value="5">

переменная $_POST[sbmt] пустая.

как это исправить? мне надо при нажатии на картинку посылать некое значение.

Спустя 5 минут, 26 секунд (19.12.2011 - 11:48) sergeiss написал(а):
Цитата (MatrixGod @ 19.12.2011 - 12:42)
как это исправить? мне надо при нажатии на картинку посылать некое значение.

А зачем? Пересылай значение в другом поле. А тут просто проверяй
if( isset( $_POST['sbmt']) )....

Спустя 2 минуты, 56 секунд (19.12.2011 - 11:51) MatrixGod написал(а):
sergeiss
думал так сделать. но это не удобно.
все же, можно через картинку как нить посылать?

Спустя 3 минуты, 53 секунды (19.12.2011 - 11:55) sergeiss написал(а):
Цитата (MatrixGod @ 19.12.2011 - 12:51)
думал так сделать. но это не удобно.

Чем же оно не удобно? Один параметр показывает, что была нажата кнопка. Другой - передает величину. Что ж тут неудобного-то? Скорее наоборот, неудобно смешивать их в кучу. Как ты и пытаешься смешать.

Спустя 12 минут, 7 секунд (19.12.2011 - 12:07) MatrixGod написал(а):
потому что у меня в этой форме несколько сабмитов. так строился скрипт.
и каждый самбит посылал некое значение. теперь эти кнопки стали картинками.
ты хотел чтоб я поле hidden добавил. но тогда при нажатии на сабмит все поля hidden пошлются...

Спустя 14 минут (19.12.2011 - 12:21) sergeiss написал(а):
Цитата (MatrixGod @ 19.12.2011 - 13:07)
потому что у меня в этой форме несколько сабмитов. так строился скрипт.

И что из того, что "в этой форме несколько сабмитов"??? Ты хочешь определить, какой из них был нажат? Если да - то чуть ранее я тебе в этой же теме показал, как это можно сделать.

Спустя 14 минут, 27 секунд (19.12.2011 - 12:35) MatrixGod написал(а):
sergeiss,
сабмиты создаются в цикле. их может быть 1000 а то и больше.
как можно все проверить? у всех же один и тот же name. а если name сделать разным то как тогда проверять? понимаешь в чем проблема?

когда это было обычная кнопка, мне было пофиг. у всех было одно и то же имя. я просто смотрел в значение и с ним делал то что нужно.

а тут я так не могу...

Спустя 9 минут, 16 секунд (19.12.2011 - 12:45) sergeiss написал(а):
Фигасе... А ЗАЧЕМ у кучи сабмитов одинаковое имя. Дай им разные имена. Проверяется очень просто smile.gif
Допустим, у сабмитов имена такие: sbmt_NNN, где NNN - это некое число, уникальное для данной страницы. И оно должно быть как-то связано с данными, к которым относится этот сабмит.
В принимающем скрипте анализируешь массив ПОСТ, ищешь ключи вида sbmt_NNN. Если нашел - то был нажат сабмит с таким именем. Всё очень просто smile.gif

Но что-то мне мой внутренний голос подсказывает, что тебе лучше сделать много форм, у каждой из которых будет только один, "личный" сабмит.

Зачем тебе столько сабмитов, кстати?

PS. Про "много форм". Есть у меня такие страницы. Каждая форма логически объединяет некие элементы. И всё отлично работает smile.gif Если у тебя какие-то проблемы - пиши, рассмотрим, сделаем.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.