PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ein / Auszahlung mediadaten



Ische2K
29.04.2008, 00:24
Hallo,

Jetzt frag ich auch einfach mal ganz dumm xD
Wieso kommt bei den mediadaten immer der wert 2147483647 Lose wurden ausgezahlt der übernimmt auch nix mehr in der datenbank

hat einer eine idee index und co schon probiert da kommt immer diese zahl raus ausser ich nehm einen kleineren wert ^^

jpwfour
29.04.2008, 20:08
da der wert für ausgezahltes guthaben afaik in der grundversion nicht enthalten ist, hast du diesen warscheinlich selber/ein addon hinzugefügt.

mögliche ursachen:

2147483647 Losedieser wert wird eindeutig durch die beschränung eines datentyps erzeugt:

MySQL:
INT 4 Bytes Min: -2.147.483.648 Max: 2.147.483.647
also evtl die entsprechende datenbankspalte auf
BIGINT 8 Bytes ... Max: 9.223.372.036.854.775.807
setzen (sollte reichen, außer ich zahl mal bei dir aus :cool: )

PHP:
php sollte eigtnlich, da man ja variablen nicht explizit einen typ zuweisen muss, einen eventuellen overflow selbst erkennen und den wert dann in float umwandeln.
dazu gibt es die konstanten: PHP_INT_SIZE, PHP_INT_MAX
wobei das auch platform abhängig ist.

in php kannst du aber den typ auch direkt angeben, in der form:


<?php
$int = 10;
$float = (float) $int;
?>

wobei ic stark auf mysql tippe, da kann es aber auch noch sein, dass der wert nicht direkt aus einer spalte gelesen wird, sondern per SUM ermittelt wird, wie es da mit der maximalen größe aussieht weiß ich nicht genau, also ob dass jetzt von den einzelnen datentypen abhängt oder von was anderem...