[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: MYSQL редактирование
record222
Доброго времени суток, друзья!
Суть проблемы.
Имеется база данных с именем 'history', в базе имеется поле 'status=not', хочу сделать так чтоб если я ввел в форму 'input' количество юзеров для изменения 20, то чтоб 'status=not' изменился на 'status=ok' в 20 пользователей.

Как это собственно реализовать?
Спасибо!



Спустя 3 минуты, 40 секунд (19.08.2011 - 11:51) inpost написал(а):
SELECT `id` FRM `history` WHERE `status` = 'not' LIMIT 20

Теперь получаешь массив IDшников.
Далее:
UPDATE ... WHERE `id` IN (тут 20 штук через запятую перечисляешь)

Спустя 2 минуты, 12 секунд (19.08.2011 - 11:54) linker написал(а):
$count = $_POST['count'];
UPDATE `history` SET `status` = 'ok' WHERE `status` = 'not' LIMIT $count

Спустя 4 минуты, 30 секунд (19.08.2011 - 11:58) inpost написал(а):
linker
Сначала хотел написать Лимит для UPDATE, а потом вдруг подумал... а если ошибусь... никогда не приходилось использовать, поэтому не помню, допустим ли такой синтаксис smile.gif

Спустя 1 минута, 11 секунд (19.08.2011 - 11:59) YVSIK написал(а):
record222 ДОброго и пожалуйста!
прежде чем что-то редактировать и тем более sol запрос
надо его видеть ; кажется так вы не находите ?
и ещё маленькая ремарка
в базе конечно-же может быть всего одна таблица а в этой таблице
только одно поле заполнения
вот в базе 'history' не может быть никак одного поля под названием status=not' по нескольким причинам поле имеет правила названия
как эти названия составляются
у вас название не корректно 'status=not' это название звучит на русский язык если перевести status равно not' а это уже оператор языка PHP

Спустя 5 минут, 6 секунд (19.08.2011 - 12:04) inpost написал(а):
YVSIK
если использовать кавычки, то можно забыть на правила имён ячеек и таблиц.

Спустя 3 минуты, 58 секунд (19.08.2011 - 12:08) record222 написал(а):
YVSIK,
Извиняюсь не правильно выразился!

linker, inpost
Спасибо! Работает!

Спустя 6 секунд (19.08.2011 - 12:08) linker написал(а):
inpost
Когда сомневаешься, то нужно курить мануал tongue.gif biggrin.gif wink.gif

Спустя 1 минута, 30 секунд (19.08.2011 - 12:10) YVSIK написал(а):
inpost это коенчно-же так и есть; но для новичка
и как для меня собственно пока вьедишь в эти умолчания
так можно головой Тронуться !! blink.gif blink.gif blink.gif
а они эти умолчания так портят жизнь новикам как
серпом по одному месту biggrin.gif

Цитата
YVSIK,
Извиняюсь не правильно выразился!

извинения тут не причем это прото порядок и для меня он стал как
привило номер один пока думаешь что-то на потом откладываешь так это потом
никогда не настает
а коломбур который сам и написал да ещё прибавить полную путаницу
в голове всех правил
можно выпасть незаметно в осадок
потому и такие маленькие ремарки smile.gif wink.gif

Спустя 2 часа, 26 минут, 16 секунд (19.08.2011 - 14:36) Skesh написал(а):
for ($i=0; $i<=20; $i++)
{
mysql_query("UPDATE `history` SET `status`='ok' WHERE `id`='$i'") or die("Query not work");
}

Спустя 9 минут, 42 секунды (19.08.2011 - 14:46) inpost написал(а):
Skesh
20 sql-запросов? Это плохо, очень плохо smile.gif

Спустя 3 минуты, 21 секунда (19.08.2011 - 14:49) Invis1ble написал(а):
Skesh
чем не подходит запрос linker'а?
И да, вызывать однотипные запросы в цикле - это зло

Спустя 38 минут, 34 секунды (19.08.2011 - 15:28) inpost написал(а):
Skesh
к тому же у тебя не 20 записей обновятся, а только записи, у которых ID от 0 до 20, а там может быть лишь 2-3 записи.
Быстрый ответ:

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