Wenn da steht: "date() expects parameter 2 to be long, tring given in ...", dann mach das doch bitte auch.
Statt
date("H:i", $timestamp);
schreibst du
date("H:i", (int) $timestamp);
Falls das nichts hilft, prüfe bitte mit is_numeric($timestamp) oder (wenn das Problem bleibt) mit
( (string) (int) $timestamp ) == $timestamp
ob es sich auch wirklich um eine Zahl handelt. Dabei ist $timestamp natürlich durch die Variable zu ersetzen, auf der du den Timestamp speicherst.