Addition

pGFlo

Mitglied
PHP:
$query = mysql_query("SELECT tore1 FROM spielplan1 WHERE verein1 = '1'",$sqlCon);
$tore = "";
while ($erg = mysql_fetch_array($query))

    $tore .= "$erg[tore1]";
echo $tore;

ich möchte, dass alle zahlen, die bei $tore aufgerufen werden addiert werden, aber wenn ich $tore .= "$erg[tore1]+"; oder so schreibe geht das nicht :( weis einer was man da machen kann?

gruss
Flo
 
lol meine idee war nix sorry! aber ich hab mal nen durschnittsrechner von noten gemacht da hat mir auch jemand ausm forum geholfen :D musse irgendwie alles in nen array schreiben! hier der code... falls dir das hilft...
PHP:
<?php


if (!isset($op))
{
	echo "Bitte gib die Anzahl der Noten ein:<br>\n";
	echo "<form method=\"post\" action=\"_rechner.php?op=note\">\n";
	echo "<input type=\"text\" name=\"a\"><br>\n";
	echo "<input type=\"submit\" name=\"submit\" value=\"Senden\">\n";
	echo "</form>";
}

if ($op == "note")
{
	echo "<form method=\"post\" action=\"_rechner.php?op=calc&a=$a\">\n";
	for ($i = 1; $i < $a+1; $i++)
	{
		echo "Die $i. Note:<br>\n";
		echo "<input type=\"text\" name=\"note[]\"><br>\n";
	}
	echo "<input type=\"submit\" name=\"submit\" value=\"Senden\">\n";
	echo "</form>\n";
}

if ($op == "calc")
{
	$sum = array_sum($note);
	$a = count($note);
	$durch = number_format($sum/$a,2,",",".");

	echo "Dein Notendurchschnitt beträgt ca. ".$durch."<br><br>\n";
	echo "<a href=\"_rechner.php\">Nochmal!!!</a>\n";
}


?>


*winkewinke*
-slim0r-
 
Zuletzt bearbeitet:
ha ich glaub ich hab doch ne idee :)
PHP:
$query = mysql_query("select tore1 from spielplan1 where verein1 = '1'",$sqlCon);
$erg = mysql_fetch_array($query);
$summe = array_sum($tore);
echo $tore;


*winkewinke*
-slim0r-
 
danke mit ner kleinen änderung ;) ($tore in $tore[] geändert ;) )ging das array_sum ding da :) vielen Dank , da hab ich nur noch eine Frage die mir bislang nicht beantwortet werden konnt :( wie finde ich heraus, in welcher Zeile ein User ist, wenn ich alles nach Beiträgen ordne, sprich welchen "Poster Rang" er hat ;)
 
ich versteh die frage nich so ganz :) meinst du als wievielter jemand was gepostet hat? machs mit id und sortiert das dann irgendwie nach der zahl oder so dann hasse immer den letzten/ersten oben/unten *gg*

oder wie meinste das?


*winkewinke*
-slim0r-
 
nene, anderes beispiel ;)

also du nimmst ne Fußballtabelle 18Teams, hast überall felder wo dort steht wieviel punkte jedes team hat ;) und hast dann den befehl
"SELECT * FROM tabelle ORDER BY punkte DESC" dadurch wird alles nach Punkten sortiert und man erhält die Tabelle.... aber wenn ich jetzt vorgebe,ich will info's zu dem Team mit der ID 5 und den Tabellenplatz erfahren möchte geht das nicht :( und das is das Problem da muss es doch was geben :(
 
du kannst immer alle datensätze auslesen und eine variable mit hochzählen.

Wenn du bei dem team angelangt bist was den richtigen namen hat, gibst du es einfach aus, mitsamt der variable.
 
PHP:
$i=1;
while($ar = mysql_fetch_array($deinquery)){
 //$ar[team] ist deine manschaft, bsp: bayern
if($ar[team] == 'bayern'){
  print $ar['team']." ist ".$i.". Platz<br>\n";
 }
++$i;
}

allerdings musst du in deinem mysql-query die teams natürlich in der richtigen reihenfolge (nach punkten eben) auslesen.
 
Also zu deinem 1. Problem, das lässt sich natürlich auch viel einfacher über die SQL-Aggregat-Funktion sum() lösen:
PHP:
$query = mysql_query("SELECT sum(tore1) as sumTore FROM spielplan1 WHERE verein1 = '1'",$sqlCon);
$tore = 0;
$erg = mysql_fetch_array($query);
$tore = $erg[sumTore];
echo $tore;

Zu deinem 2. Problem würde ich einfach eine Zähler mitlaufen lassen:

PHP:
$query = mysql_query("SELECT * FROM tabelle ORDER BY punkte DESC");
$zaehler = 1;
while ($erg = mysql_fetch_array($query))
{
   if($erg[ID]==5)
   {
      $platz = $zaehler;
      $teamname = $erg[team];  // oder wie auch die Felder heißen
      $punkte = $erg[punkte];
   }
   zaehler++;
}

echo $platz + "<br>";
echo $teamname + "<br>";
echo $punkte + "<br>";

So würde ich das machen, denke mal das das funzt. Achja für Fehler übernehm ich keine Verantwortung, da ich das ohne zu Testen mal so hier reingeschrieben hab.

Gruss Homer
 
Zurück