logimann Geschrieben 29. April 2003 Geschrieben 29. April 2003 moin weiß einer wie ich von 4 werten (zahlen) die 3 größten ermittel, sie zusammen zähle und dann ausgebe??(in php) hat da wer ne idee? mfg logimann Zitieren
Crow T. Robot Geschrieben 29. April 2003 Geschrieben 29. April 2003 Hallo logimann! Pack alle Werte in eine Array, summiere diesen mit array_sum(), suche das Minimum im Array mit min() und subtrahiere dies von der Summe. Klingt kompliziert, ist aber sehr einfach und ist nicht auf vier Werte begrenzt: $werte = array( 42, 17, 23, 85 ); $summe = array_sum( $werte ) - min( $werte );[/PHP] Zitieren
logimann Geschrieben 29. April 2003 Autor Geschrieben 29. April 2003 wenn ich das richitg seh kann ich das auch so machen oder?? weil mein daten aus ner db kommen! $werte = array( ".a.", ".b.", ".c.", ".d."); $summe = array_sum( $werte ) - min( $werte );[/PHP] mfg logimann Zitieren
Crow T. Robot Geschrieben 29. April 2003 Geschrieben 29. April 2003 Nein, das geht so nicht, mit Strings können keine arithmetischen Operationen durchgeführt werden. Zitieren
logimann Geschrieben 29. April 2003 Autor Geschrieben 29. April 2003 hmm dann bringt mir das nicht wirklich was! ich brauch das mit strings! kann da wer helfen? Zitieren
Crow T. Robot Geschrieben 29. April 2003 Geschrieben 29. April 2003 Wieso schreibst du dann am Anfang erst, dass du das für Zahlen brauchst, wenn's doch nicht stimmt?! Und ausserdem: Wie willst du Strings denn zusammenzählen? Das geht einfach nicht, weil es eben keine Zahlen sind! Zitieren
logimann Geschrieben 30. April 2003 Autor Geschrieben 30. April 2003 es sind doch auch zahlen!! also noch mal! ich lese aus ne db zahlen aus diese geb ich aus. jetzt soll er sich von den zahlen die 3 größte raussuchen und zusammen zählen. da sie aber aus ner tabelle mit strings komme muss ich ja die strings zusammen zählen du kannst ja auch wenn z.b. in den feld a 50 im feld b 50 und im feld c 50 steht dann kannst du sie ja auch zusammen zählen und es kommt 150 raus(siehe unten). oder täusch ich mich da? while ($feld = mysql_fetch_array($sql)): $a = $feld["a"]; $b = $feld["b"]; $c = $feld["c"]; $summe = "$a"+"$b"+"$c" ?> [/php] Zitieren
Spike Geschrieben 30. April 2003 Geschrieben 30. April 2003 Deinem obigen Code zufolge machs doch so: $werte = array( $a, $b, $c, $d ); $summe = array_sum( $werte ) - min( $werte ); [/php] Zitieren
Crow T. Robot Geschrieben 30. April 2003 Geschrieben 30. April 2003 Hallo logimann! Entscheide dich doch bitte endlich mal, was du überhaupt willst: Er sind es Zahlen, dann "brauchst du das für Strings", dann sind es doch wieder Zahlen... Wie soll man dir helfen, wenn du noch nicht einmal selber weisst, was du überhaupt willst?! :confused: Zitieren
AlexBossi Geschrieben 6. Mai 2003 Geschrieben 6. Mai 2003 Hallo Leute! Ist doch nun wirklich egal was es ist! Wenn es ein String ist braucht man doch nur (int) davorschreiben und so wird der String umgewandelt. z.B. $a = (int)$feld["a"]; $b = (int)$feld["b"]; $c = (int)$feld["c"]; [/php] Bis denn... :marine Zitieren
Spike Geschrieben 6. Mai 2003 Geschrieben 6. Mai 2003 Original geschrieben von AlexBossi Ist doch nun wirklich egal was es ist! PHP ist es egal solang es sich um numerische Werte handelt. Solange Zahlen aus der Datenbank kommen, funktioniert auch obiger Code. Sind es String, funktioniert das sowieso nicht Prüfen ob es sich um einen numerischen Wert handelt: http://www.php.net/manual/de/function.is-numeric.php Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.