Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: почему-то не работает UPDATE
mysql_query("UPDATE files_download SET files_download=files_download+1 WHERE files_id='$id'");
?>
в БД столбец files_download имеет значение int(64) по умолчанию 0, файл при запросе скачивается, но 0 не увеличивается на 1 , а в коде вроде все верно. Почему-же не Апдейтится?
EuGen
Отправлено: 16 Июля, 2011 - 22:08:09
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Попробую "телепатически" - сделайте так:
UPDATE files_download SET files_download.files_download=files_download.files_download+1 WHERE files_download.file_id='$id'
А вообще, посмотрите вывод mysql_error() после Вашего запроса UPDATE
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
PATCH
Отправлено: 16 Июля, 2011 - 22:12:17
Частый посетитель
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
Помог: 22 раз(а)
хм запрос в запросе прикольно)
SofiaKit
Отправлено: 16 Июля, 2011 - 23:01:52
Частый гость
Покинул форум
Сообщений всего: 182
Дата рег-ции: Сент. 2010
Помог: 0 раз(а)
EuGen дело в том, что по вашему примеру я якобы буду склеивать 2 таблицы, даже если и склею, я содержимое не увижу. PATCH на сколько я знаю, неважно какая сумма там стоит, 0, или 500, UPDATE меняет значение, если +1 необходимо, то должно плюсовать, зачем вычитать чтоб прибавить? не поняла ваше мышление. Slavenin а разве нельзя ипользовать UPDATE без выборки? вчера еще можно было
EuGen
Отправлено: 16 Июля, 2011 - 23:03:52
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
SofiaKit пишет:
EuGen дело в том, что по вашему примеру я якобы буду склеивать 2 таблицы
Это еще почему? Я написал запрос, отделив имя таблицы от имени поля так, чтобы было понятнее. Вообще лучше не задавать их одинаковыми - путаница может возникнуть или ошибки в ряде случаев.
Все же посмотрите mysql_error() что сообщает.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
PATCH
Отправлено: 16 Июля, 2011 - 23:05:56
Частый посетитель
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
Помог: 22 раз(а)
она не совсем четко изложила мысль если нам надо чтобы в таблицы было значение вместо 0 было 1 то делаем простой запрос как я описал в конце своего поста если нам надо с плюсовать то откудо нам знать что там в этой таблицы плюсоватЬ? без выборки? и где я что вычитал пояснитика Оо. честно я знаю базово SQL запросы но как я описал должно работать и не где я не вычитал))
если все таки этот код типо рабочий то походу должно быть так я лично хЗ) такими запросами не занимался)
mysql_query( "UPDATE files_download SET files_download='files_download+1' WHERE files_id='$id'" );
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1 WHERE `dataT`.`ID` = 1' at line 1
а когда я изменила имя файла и пару названий таблиц, перестало считать? почему там прибавляет, хотя вы утверждаете что ЭТО НЕВОЗМОЖНО , думаю тогда Вам будет интересно почитать про УНИКАЛЬНЫЙ код запроса и UPDATE, для вас будет открытием, я уверенна ну а я.... я дальше искать буду где-же я ошиблась, или может ктонибудь знающий все-же отзовется.
PATCH
Отправлено: 16 Июля, 2011 - 23:21:48
Частый посетитель
Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011
а когда я изменила имя файла и пару названий таблиц, перестало считать? почему там прибавляет, хотя вы утверждаете что ЭТО НЕВОЗМОЖНО , думаю тогда Вам будет интересно почитать про УНИКАЛЬНЫЙ код запроса и UPDATE, для вас будет открытием, я уверенна ну а я.... я дальше искать буду где-же я ошиблась, или может ктонибудь знающий все-же отзовется.
т.е ты копировал все что там есть создавала точно такую же таблицу и проверяла код в оригинале? или на статью полагаешся?)) не 1 комента рабочий он или нет)
п.с а если он типо рабочий проверьте таблицы в бд название что бы соответствовали названиям в коде.
Покинул форум
Сообщений всего: 182
Дата рег-ции: Сент. 2010
Помог: 0 раз(а)
PATCH в предыдущем посте я указала что КОД В ОРИГИНАЛЕ РАБОЧИЙ, как же вы програмите, если такой не внимательный, что даже не то что между строчек пропускаете, а вообще не читаете что Вам отвечают , он перестает работать когда я его исправляю под свою таблицу.
Slavenin
Отправлено: 16 Июля, 2011 - 23:29:57
Посетитель
Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010 Откуда: Тверь
Помог: 4 раз(а)
SofiaKit, про синтаксис update я знаю много, судя по всему много больше, чем вы, приведенный мной пример и ответ сервера, был взят из реальной живой базы, думаю что афтор приведенной вами статьи сам не пробовал выполнить свой запрос... сделайте проще, зайдите в phpMyAdmin ручками напишите запрос на обновление конкретной строки и посмотрите что вам скажет на это сервер...
mysql_query("UPDATE files_download SET files_download=files_download+1 WHERE id=".$id);
- ровненько по ОРИГИНАЛУ (синтаксис)
а вообще название таблице совпадает со строкой) мб в строке files_download=files_download+1 он воспринимает второй files_download как таблицу м? в оригинале то разные имена таблиц, столбцов..
решение: измените имя столбца или таблицы так что бы они не совпадали
п.с если уж это не поможет) я хз ждите WebgyrY) мб объявитсо кто нитЬ) или же вы всетаки воспользуетесь моим кодом) который читабельный и понятный)
Slavenin пишет:
SofiaKit, про синтаксис update я знаю много, судя по всему много больше, чем вы, приведенный мной пример и ответ сервера, был взят из реальной живой базы, думаю что афтор приведенной вами статьи сам не пробовал выполнить свой запрос... сделайте проще, зайдите в phpMyAdmin ручками напишите запрос на обновление конкретной строки и посмотрите что вам скажет на это сервер...
ТЫ ЧТО Она проверяЛА Он РабОчий) чуть выше твоего поста мне коректный ответ)
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.