Hallo zusammen!
Ich möchte eine Funktion für die Abweichung von der Serverzeit für die User meiner Website einrichten. Dabei sind die Uhrzeiten als Timestamps in der Datenbank gespeichert, die Funktion adapt_time() soll sie umwandeln.
Ursprünglich sah das Ganze so aus:
PHP-Code:
function adapt_time($value)
{
if (isset($login_userid) && $login_userid != "") // Eingeloggter User
{
$offset = "SELECT * FROM user_list WHERE userid='". $login_userid . "' LIMIT 1";
$offset = mysql_query($offset);
while ($off = mysql_fetch_object($offset)) $timezone = $off->timezoneoffset;
$value = $value + (3600 * $timezone);
}
$value = date("h:i A",$value);
return $value;
}
Das hat so nicht funktioniert, es wurde immer noch die in der Datenbank gespeicherte Zeit ohne Abweichung ausgegeben.
Wenn ich den Code allerdings außerhalb einer Funktion verwende, funktioniert es komischerweise.
Dann habe ich irgendwo gelesen, dass man die mysql_connect in die Funktion reinpacken muss:
PHP-Code:
function adapt_time($value)
{
if (isset($login_userid) && $login_userid != "") // Eingeloggter User
{
$db_host = 'localhost';
$db_name = 'xxx';
$db_user = 'xxx';
$db_pass = 'xxx';
$db = mysql_connect($db_host,$db_user,$db_pass) or die(mysql_error());
mysql_select_db($db_name) or die(mysql_error());
$offset = "SELECT * FROM user_list WHERE userid='". $login_userid . "' LIMIT 1";
$offset = mysql_query($offset);
while ($off = mysql_fetch_object($offset)) $timezone = $off->timezoneoffset;
$value = $value + (3600 * $timezone);
}
$value = date("h:i A",$value);
return $value;
}
Diese Abfrage ist dieselbe, die ich für den Rest der Website verwendet habe.
Trotzdem zeigt das Script nach wie vor die unveränderte Zeit an.
Was mache ich falsch?
EDIT: Hab es selbst hinbekommen, sry für den Thread... ^^"
(kann gelöscht werden)