Witajcie towarzysze myszki w informatycznym boju ;)
Wypadło mi z głowy w jaki sposób robiło się repeace w mysql.
Chodzi o "taki" UPDATE (SET WHERE) który w wypadku niepowodzenia (bo np nie ma rekordu) doda nowy ;)
$b=$dbh->prepare("REPLACE INTO xxx (klucz,obraz) VALUES (:hasz,:obraz)");
$b->bindParam(":hasz",$hasz);
$b->bindParam(":obraz",$out);
$b->execute();
Próbowałem ten kod, ale po przytrzymaniu f5, mam 50 wpisów ;) Czyli nie działa.
Sytuacja ma być taka.
User otwiera... system patrzy, nie ma takiego rekordu to dodaje nowy. Jeżeli taki rekord istnieje to zamienia wartość ;)
Było, to na pewno bez PDO, pamiętam bo dawno temu miałem tak funkcję przy systemie sesji. Nikt nie pieprzył się w SELECT id from xxx, i sprawdzanie if id!='' then update else insert new.
Pamiętam, bo zaskoczyło mnie to że tak można. Dawniej jak byłem młodszy sam tak robiłem.
SELECT
IF EXIST
UPDATE
ELSE
INSERT
I w PHP miałem 3 zapytania do serwera SQL. A potem okazało się że można to zrobić jednym.
Jeżeli ktoś by mi to przypomniał, to będę zobowiązany ;)