Beiträge von Beavis

    Das geht auch rigendwie mit MySQL
    Nur ich weiß nicht wie man es macht das ist es ja...


    Kaliber:


    Die Funktion tut es jetzt endlich
    GetTimestamp(Timestamp)
    {
    new Wert[50],query[128];
    format(query, 128, "SELECT FROM_UNIXTIME(%d, '%s.%s.%s %s');", Timestamp, "%d","%m","%Y","%T");
    mysql_query(query, (-1), (0), SQL);
    mysql_store_result(SQL);
    mysql_fetch_string(Wert,SQL);
    mysql_free_result(SQL);
    return Wert;
    }
    Passgenau wenn ich den Timestamp eintrage bekomm ich das raus:
    16.04.2013 11:58:59

    Schau dir mal das Datum von dir an
    der Timestamp ist von meinen Account


    Der ist aber falsch der Timestamp: 1366106339
    Ist exakt die Zeitangabe: 16.04.2013 um 10:58:59 Uhr.


    Die Funktion die ich da nutze und auch du ist für die Tonne da die die Werte falsch wiedergibt

    Ich brauch den Timestamp da ich den auch für andere Zwecke nutze darum mach ich es auch so...
    Wenn ich das so mache wie Simon, dann darf ich wieder haufenweise umschreiben worauf ich kein Bock habe
    So les ich das aus
    new Test[6];
    date(PlayerInfo[playerid][RegisterTime], Test[0], Test[1], Test[2], Test[3], Test[4], Test[5]);
    format(string,128,"Registriert: %02d.%02d.%d - %02d:%02d:%02d Uhr", Test[3], Test[4], Test[5], Test[0], Test[1], Test[2]);

    Wie oft soll ich es noch schreiben das er mir das Falsche Datum ausgibe X(


    Den müll habe ich
    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;
    }


    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;
    }

    das habe ich doch X(
    date(PlayerInfo[playerid][RegisterTime], Test[0], Test[1], Test[2], Test[3], Test[4], Test[5]);
    Heute mal nen Test gemacht und er sagte mir das ich mir im Januar nen Account erstellt habe...
    Die Funktion ist für die Tonne


    Selbst wenn ich das per Query umwandel is mir auch egal nur wie man es mit MySQL umwandelt hab ich nicht wirklich raus

    Das ist mir klar
    Ich lass aber den Timestamp abspeichern in der Account Tabelle, und möchte den Timestamp umrechnen da hilft mir das Beispiel ja net weiter...


    Guck mal in der Tabelle steht das: 1366106339
    So soll der Wert umgerechnet werden:
    %02d.%02d.%d - %02d:%02d:%02d Uhr// Hier soll der Timestamp umgerechnet werden der in den Account steht

    Ahh so geht das^^
    Naja mit den strfind etc hab ich wenig gemacht :D
    Aber danke dir


    //nachtrag


    Hat jemand eine Funktion womit ich gettime(); Umrechnen kann?
    Ich schreibe das absichtlich so, da es exakt wie Timestamp ist nur ich brauch ne Funktion um es umzurechnen :D