Hey,
wie kann ich den Unix-Timestap in ein normales Datum umrechnen?
mfg
Hey,
wie kann ich den Unix-Timestap in ein normales Datum umrechnen?
mfg
Meinst du getdate und gettime? Da muss man doch nix umrechnen?!
gettime da bekommt man den Unix-Timestap und wie rechnet man den wieder in ein "normales" Datum
welches format willst du denn?
GetDate und GetTime gibts standartmäßig, alles andere musste selbst machen.
//Edit: ok das geht soweit ich weiss nicht so einfach.
also ich bräuchte eig sowas wie TAG.MONAT.JAHR STUNDE:MINUTEN
Was genau haste denn vor? Vielleicht lässt sich das ganze ja anders lösen.
Aber warscheinlich kann man den timespamt durch irgendeine formel in tage usw umrechnen, am besten ma googlen.
Ich weiß wie ich das anders lösen könnte.
So also ich habe ein Ban und Tbansystem. Läuft über mysql.
Nun habe ich eine Straflog vor, das heißt ic hspeicher dann auch die Daten immer usw .
Wenn ich jemand kicke oder permbanne könnte ich ja das Datum in ein String packen das wäre möglich, jedoch nicht bei einem TBan, da ich da ja noch den UNIX-Timestamp brauche
mfg
Hä was willst du? Du musst garnichts umrechnen :D:D
new string[60], hour,min,sec,year,month,day;
gettime(hour,min,sec); getdate(year,month,day);
format(string, sizeof string, "%d.%d.%d, %d:%d:%d", day, month, year, hour, min, sec);
Dann kriegste zum Beispiel "4.6.2011, 14:32:49" raus und was ist daran jetzt kein normales Datum?
Hä was willst du? Du musst garnichts umrechnen :D:D
new string[60], hour,min,sec,year,month,day;
gettime(hour,min,sec); getdate(year,month,day);
format(string, sizeof string, "%d.%d.%d, %d:%d:%d", day, month, year, hour, min, sec);
Dann kriegste zum Beispiel "4.6.2011, 14:32:49" raus und was ist daran jetzt kein normales Datum?
wenn man keine Ahnung hat Mund zu! Liesm al nach was der UNIX_Timestap ist!
mfg
Du solltest eigentlich mit der native gettime(); auskommen
Du solltest eigentlich mit der native gettime(); auskommen
dann erklär mir mal wie ich aus dem timestamp ein Datum kriege wie oben angegeben:
1307195770
Er will einfach einen vorhanden UnixTimeStamp in ein Datum transferieren, wie die date Funktion in php.
Ich habe da irgendwo mal was vorgefertigtes gefunden, ich suche mal eben.
Edit:
ZitatDu solltest eigentlich mit der native gettime(); auskommen
Damit meint, er dass die Funktion gettime den Rückgabewert in Form von einem UnixTimeStamp hat, welchen du dann mit dem aus der DB mit ">" und "<" vergleichen kannst denke ich mal.
Er will einfach einen vorhanden UnixTimeStamp in ein Datum transferieren, wie die date Funktion in php.
Ich habe da irgendwo mal was vorgefertigtes gefunden, ich suche mal eben.
danke dir endlich mal einer der was Ahnunf hat
stock mktime(hour,minute,second,day,month,year)
{
new timestamp2;
timestamp2 = second + (minute * 60) + (hour * 3600);
new days_of_month[12];
if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) )
{
days_of_month = {31,29,31,30,31,30,31,31,30,31,30,31};
}
else
{
days_of_month = {31,28,31,30,31,30,31,31,30,31,30,31};
}
new days_this_year = 0;
days_this_year = day;
if(month > 1)
{
for(new i=0; i<month-1;i++)days_this_year += days_of_month[i];
}
timestamp2 += days_this_year * 86400;
for(new j=1970;j<year;j++)
{
timestamp2 += 31536000;
if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ) timestamp2 += 86400;
}
return timestamp2;
}
Beispiel:
stock Now()
{
new hour,minute,second,year,month,day;
gettime(hour, minute, second);
getdate(year, month, day);
return mktime(hour,minute,second,day,month,year);
}
Edit:
8D: Jap, so wollte ich mich ausdrücken
Jo aber nach wie vor, will er nichts vergleichen sondern quasi einfach umwandeln. Aber im Gegensatz zu mktime.
Ich dachte jetzt an cvttimestamp, aber die funktioniert in pawno nicht, ist aber in den libs aufgelistet.
Ich glaub bei Useful Functions gibts ne "date" funktion, musst dort mal schauen.
Alles anzeigenstock mktime(hour,minute,second,day,month,year)
{
new timestamp2;
timestamp2 = second + (minute * 60) + (hour * 3600);
new days_of_month[12];
if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) )
{
days_of_month = {31,29,31,30,31,30,31,31,30,31,30,31};
}
else
{
days_of_month = {31,28,31,30,31,30,31,31,30,31,30,31};
}
new days_this_year = 0;
days_this_year = day;
if(month > 1)
{
for(new i=0; i<month-1;i++)days_this_year += days_of_month[i];
}
timestamp2 += days_this_year * 86400;
for(new j=1970;j<year;j++)
{
timestamp2 += 31536000;
if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ) timestamp2 += 86400;
}
return timestamp2;
}
Beispiel:
stock Now()
{
new hour,minute,second,year,month,day;
gettime(hour, minute, second);
getdate(year, month, day);
return mktime(hour,minute,second,day,month,year);
}
Edit:
8D: Jap, so wollte ich mich ausdrücken
aber wie kann ich dann den UNIX_Timestamp umwandeln dami
stock date(zeitpunkt, &hour, &minute, &second, &day, &month, &year) // by Martez
{
new h = 0, m = 0, s = 0, da = 1, mo = 1, ye = 1970;
for(;;) { ye++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { ye--; break; } }
for(;;) { mo++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { mo--; break; } }
for(;;) { da++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { da--; break; } }
for(;;) { h++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { h--; break; } }
for(;;) { m++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { m--; break; } }
for(;;) { s++; if(((zeitpunkt) - (mktime(h, m, s, da, mo, ye))) < 0) { s--; break; } }
hour = h; minute = m; second = s; day = da; month = mo; year = ye; return 1;
}
@Martez schön wie du eine for-schleife so missbrauchst
oder du nutzt die Mysql funktion FROM_UNIXTIME
@Martez schön wie du eine for-schleife so missbrauchst
oder du nutzt die Mysql funktion FROM_UNIXTIME
klingt ganz gut
aber
format(query, 128," SELECT FROM_UNIXTIME(%d, '%e.%M.%Y %T')",timestamp);
wenn ic hdasm ache und halt mit allem drum und dran spuckt der mir e.M.Y T aus
//edit die ganze Fumnktion
stock date(timestamp)
{
new query[128], Get[128];
format(query, 128," SELECT FROM_UNIXTIME(%d, '%e.%M.%Y %T')",timestamp);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(Get);
return Get;
}