Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] zapisywanie daty do bazy
Forum PHP.pl > Forum > Przedszkole
lukash82
Witam,

Muszę zaktualizować pole typu DATETIME w bazie. Kolumna nazywa się "mod".

  1. $mod = date('Y-m-d H:i:s');
  2. $sql = "UPDATE tabela SET mod='".$mod."' WHERE id='" . $id . "'";
  3. $result = mysql_query($sql) or die (mysql_error());


Patrzę na to już dobrych parę chwil i nie widzę byka... Co robię nie tak, że non stop wywala mi błąd w zapytaniu?

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 'mod='2013-01-03 10:38:27' WHERE id='25'' at line 1

Chodzi o linię z zapytaniem. Dla testów wywaliłem wszystko co niepotrzebne i zostawiłem tylko te 3 linijki. Jeśli ktoś z Was widzi jakiś błąd to proszę o podpowiedź.
skowron-line
  1. 'UPDATE tabela SET mod="'. $mod .'" where id='. $id;

lukash82
Dzięki za szybkie info ale niestety dalej wywala takiego samego byka...

Mam w tej tabeli jeszcze inne kolumny i jak je wszystkie aktualizuję z pominięciem kolumny "mod" to wszystko leci bez problemu. Format danych date() i w tabeli DATETIME się zgadza bo dodawanie nowego rekordu do tabeli w identycznej formie działa. Ale aktualizacja tej kolumny niestety już nie. Niby prosta sprawa a chrzani się to niemiłosiernie:/
aras785
A format jest taki sam jak przy dodawaniu?

Spróbuj tak:

  1. $sql = "UPDATE tabela SET mod='$mod' WHERE id='$id' LIMIT 1--";
lukash82
Dalej klapa:/

Normalnie jakieś dziwy się mi tu dzieją...

Zmieniłem format w bazie na DATE i $mod = date('Y-m-d') -> działa
Zmieniłem format w bazie na TIME i $mod = date('H:i:s') -> działa

Wróciłem z powrotem do DATETIME i $mod = date('Y-m-d H:i:s') -> nie działa

Zmieniłem dane w innej kolumnie z identycznymi ustawieniami i wszytkie opcje działają. Wróciłem do starej kolumny, kaput:/

Nie wiem o co chodziło ale problem rozwiązał się po zmianie nazwy kolumny z "mod" na jakąkolwiek inną nazwę. Normalnie czary jakieś czy co?

Jak ktoś wie co ma do rzeczy nazwa kolumny "mod" i nazwa zmiennej do niej zapisywanej "$mod" to niech da znać. Ale tylko przy aktualizacji rekordu. Dodawanie do pustej komórki działa, hehe.

Dzięki za pomoc.
viking
Ma to do rzeczy http://dev.mysql.com/doc/refman/5.0/en//ma...ml#function_mod
Używasz słowa zastrzeżonego.
lukash82
A, takie buty...wink.gif

Dzięki za wyjaśnienie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.