 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
20.05.2003, 19:38
|
#1
|
|
TP-Specialist
Registriert seit: Sep 2001
Ort: Rhein-Main
|
Aus Datenbank mit Werten arbeiten
Wenn ich über ein Eingabeformular Werte in einer Datenbank speichere und mit diesen auch auch eventuell später arbeiten möchte, dürfen diese bestimmt nicht den Type Text haben, oder? Okay, es gibt die Möglichkeit bei einem Feld eine Kommazahl einzutragen, also z.B. 10,5 - wie mache ich das, das mysql diese als Zahl 10,5 abspeichert und ich dann auch diese Zahl später zum rechnen verwenden kann. Ich dachte dafür wäre Type double, aber es ging nicht???
|
|
|
20.05.2003, 19:43
|
#2
|
|
Guest
Registriert seit: Aug 2002
|
Wie wär's mit dem Float-Typ ? 
|
|
|
20.05.2003, 19:46
|
#3
|
|
TP-Specialist
Registriert seit: Sep 2001
Ort: Rhein-Main
|
der gibt nur ganze zahlen aus also 10 anstatt 10,5! Oder muss ich noch was einstellen?
|
|
|
20.05.2003, 22:25
|
#4
|
|
TP-Member
Registriert seit: Jun 2002
|
1.
Feld-Typ: Float oder Double
Länge/Set: 10,2
10 -> gesamte länge der Zahl inkl. dezimal-trennzeichen und dezimalstellen
2 - > Dezimalstellen
2.
Beim Eintragen statt 10,5 -> 10.5
|
|
|
21.05.2003, 23:25
|
#5
|
|
TP-Specialist
Registriert seit: Sep 2001
Ort: Rhein-Main
|
Bingo, das hat geklappt aber,
1. das kann doch nicht sein, dass der Besucher zwingend 10.2 anstatt 10,2 eingeben muss - da kann man doch bestimmt noch was machen oder?
2. Wie kann ich das regeln, das immer der neuste Eintrag oben anstatt zum Schluß steht? Hier der Code:
PHP-Code:
$query = "SELECT * FROM abspecken";
$result = @mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_row($result)) {
echo "<b>Datum:</b> $row[0]<br>",
"<b>Gewicht:</b> $row[1]<br>",
"<b>Zielgewicht:</b> $row[2]<br>",
"<b>Kommentar:</b> $row[3]<br><br><br>";
}
|
|
|
21.05.2003, 23:31
|
#6
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
Zitat:
Original geschrieben von Paco
das kann doch nicht sein, dass der Besucher zwingend 10.2 anstatt 10,2 eingeben muss
|
Das ist halt die Diversifikation zwischen dem englischen und dem deutschen Dezimaltrennzeichen ... frag' doch einfach bei der Eingabe per Schleife ab und ersetzte das Komma ggf. durch einen Punkt. 
__________________
Give up yourself into the moment — The time is now.
|
|
|
21.05.2003, 23:43
|
#7
|
|
TP-Specialist
Registriert seit: Sep 2001
Ort: Rhein-Main
|
hmmm...kleine Starthilfe?  (aber nicht nur if  )
|
|
|
21.05.2003, 23:57
|
#8
|
|
TP-Greis
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
|
PHP-Code:
$string = ereg_replace (",",".", $string);
__________________
Give up yourself into the moment — The time is now.
|
|
|
22.05.2003, 00:08
|
#9
|
|
TP-Specialist
Registriert seit: Sep 2001
Ort: Rhein-Main
|
Ausbaufähig Thx! 
|
|
|
23.08.2004, 10:52
|
#10
|
|
TP-Member
Registriert seit: May 2004
Ort: Schweiz.
|
Was aber, wenn der Feldtyp zwingend "TEXT" ist (etwa weil bei anderen Einträgen in derselben Spalte der Tabelle Text verwendet werden muss)?
Wenn ich hier Zahlen eingebe, erscheinen höchstens zwei Stellen hinter dem Komma, auch wenn ich sie mit strval zuerst in einen String umwandle. Ich hab schon überprüft, wie die Strings übergeben werden, da ist noch alles Korrekt, bloss der Eintrag in die DB funktioniert nicht.
__________________
http://www.final-frontier.ch - http://www.planeten.ch
|
|
|
23.08.2004, 15:07
|
#11
|
|
TP-Moderator
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
|
Alles was von einem Formular kommt ist vorerst als String anzusehen. Zeig doch mal ein paar relevante Code-Stellen. Der Fehler muss woanders begraben sein.
Gruss
Jan
|
|
|
23.08.2004, 15:15
|
#12
|
|
TP-Member
Registriert seit: May 2004
Ort: Schweiz.
|
Ich hab das Problem lösen können, in dem ich den Feldtyp von TEXT auf CHAR geändert habe - nun gibt es kein Problem mehr mit den Nachkommastellen. Trotzdem danke für die Hilfe.
__________________
http://www.final-frontier.ch - http://www.planeten.ch
|
|
|
23.08.2004, 17:56
|
#13
|
|
TP-Senior
Registriert seit: Aug 2003
Ort: Kaiserslautern
|
Kannst aber auch per
PHP-Code:
$zahlt = (float) $str;
den Parameter in eine Zahl umwandeln.
Desweiteren kannst du dir auch mal die Funktion set_local() angucken. Damit kannst du alles global in allen Skripten von Englisch auf Deutsch umstellen, also auch mit "Kommazahlen" (10,2) arbeiten. Würde damit allerdings vorsichtig sein.
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 03:40 Uhr.
|
 |