Pole wartosc jest unikalne, a czas ma ustawiony atrybut ON UPDATE CURRENT_TIMESTAM i wartość domyślną CURRENT_TIMESTAM.
Teraz zrobiłęm sobie prosty formularz wysyłany jednym polem wartosc.
Po jego wysłaniu ma zaktualizować timestamp dla rekordu odpowiadającego tej wartości lub utworzyć nowy rekord jeśli nie ma go w bazie.
mam coś w stylu:
<?php ... } ... ?>
I jeśli nie ma odpowiadającego rekordu to go łądnie tworzy, ale nie aktualizuje timestampu dla istniejącego rekordu!
Sprawdzałem też:
<?php if($sql = mysql_query("UPDATE ".DBNAME." SET wartosc='$tmp' WHERE wartosc='$tmp'",$conn)) echo ' zaktualizowano'; else echo ' nie zaktualizowano!'; ?>
sprawdzałęm też:
<?php if($sql = mysql_query("UPDATE ".DBNAME." SET czas=NOW() WHERE wartosc='$tmp'",$conn)) echo ' zaktualizowano'; else echo ' nie zaktualizowano!'; if($sql = mysql_query("UPDATE ".DBNAME." SET czas=CURRENT_TIMESTAMP WHERE wartosc='$tmp'",$conn)) echo ' zaktualizowano'; else echo ' nie zaktualizowano!'; if($sql = mysql_query("UPDATE ".DBNAME." SET czas='$czas' WHERE wartosc='$tmp'",$conn)) echo ' zaktualizowano'; else echo ' nie zaktualizowano!'; ?>
sprawdzałem też bez ,$conn
...i nic, co dziwne zawsze wynik mam false.
A rekord ten na 100% istnieje bo select mi go wyciąga.
Co jest grane? Co gdzie jak poprawić żeby to działało jak tego chcę?