Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
[z.Z. keine Fragen] MySQL - Technische Frage
#11
Probiere es einfach mal aus.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#12
Ok, jetzt hab ich es massentauglich gemacht und den timestamp raus. Nur finde ich nix im Manual über Umwandlung des timestamp. Welche Funktion muss ich also verwenden um es als alter auszugeben?
Keinen Support per PN, eMail und Messenger
computerhartware.de
GIGA - Spielen geht immer!
Zitieren
#13
Der Timestamp am Ende ist ja die Differenz in Sekunden. Die kannst du in Jahre umwandeln, indem du durch 31536000 teilst. Danach musst du noch runden.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#14
hmmmm... also so sieht das Skript im Moment aus:
PHP-Code:
$abfrage mysql_query("SELECT * FROM `gebtage` WHERE monat = '".date("m")."' ORDER BY monat ASC");
while(
$row mysql_fetch_assoc($abfrage)) {
$gebts mktime(000$row[monat], $row[tag], $row[jahr]);
$aktts date("U");
$gebstamp $aktts-$gebts;
$alter $gebstamp/31536000;
     echo 
"<b>$row[name]</b> $row[tag].$row[monat].$row[jahr](wird ";
$alter $S;
if (
$S 12) echo "12";
elseif (
$S 12) echo "13";
elseif (
$S 13) echo "14";
elseif (
$S 14) echo "15";
elseif (
$S 15) echo "16";
elseif (
$S 16) echo "17";
elseif (
$S 17) echo "18";
elseif (
$S >= 18) echo "19";
")<br />\n";


Nur das Runden scheitert, es wird immer "(wird 12)" ausgegeben, die Rechnung stimmt allerdings, den vorher hat er "15.9xxxx" als Timestamp ausgegeben, somit müsste eig. "wird 16" da stehn.
Keinen Support per PN, eMail und Messenger
computerhartware.de
GIGA - Spielen geht immer!
Zitieren
#15
Benutze die Funktion ceil().

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#16
Ja, das sieht schon viel besser ausWink....

...ABER:
Jetzt wird jemand mit "wird 16" gekennzeichnet, der aber morgen erst 15 wird. Das ist unschön. Vorher wo ich noch den Timestamp anzeigen ließ, ist rausgekommen, das bei ihm 15.00xxx steht, somit wird dieser Wert aufgerundet, aber das möchte ich nicht. Was ist nun die Lösung dafür?Rolleyes

===> Hat sich erledigt, ich habe ceil() durch round() ersetzt da diese erst ab x.5 aufrundet und bei x.4 abrundet.
Somit danke dir Michael erstmal für diesen Moment.Wink
Keinen Support per PN, eMail und Messenger
computerhartware.de
GIGA - Spielen geht immer!
Zitieren