Daten auslesen

ich habe ein formular welches daten in der datenbank speichert.

ich hab folgendes in der datenbank gespeichert:
mysql_query("INSERT INTO ppc_anmeldungen
(nachname, vorname, email, verein, spielklasse, position, turnierklasse, eintrag, timestamp)
id hab ich automatisch
in turnierklasse wird gespeichert (damen, herren a, herren b oder herren c)

nun möchte nur einen bestimmten teil auslesen.
ich möchte
a) gesamt anzahl der teilnehmer
b) nur anzahl teilnehmer damen
c) nur anzahl teilnehmer herren a
d) nur anzahl teilnehmer herren b
e) nur anzahl teilnehmer herren c

aber alles soll auf einer seite erscheinen

vllt könnte mich da jemand unterstützen

Vielleicht hilft dir ja das weiter:
little-idiot.de/mysql/mysql-169.html

Damit sollte man sogar alles in einer Abfrage unterbringen.

so z.B.:

gibt die anzahl einträge zurück, bei denen spielklasse x ist :wink:

mfg Joey

[quote=“freggle”]Vielleicht hilft dir ja das weiter:
little-idiot.de/mysql/mysql-169.html

Damit sollte man sogar alles in einer Abfrage unterbringen.[/quote]

alles in einer abfrage wäre optimal, nur check ich net durch

[quote=“bcg”]so z.B.:

gibt die anzahl einträge zurück, bei denen spielklasse x ist :wink:

mfg Joey[/quote]

bei dem bräuchte ich doch mehrere abfragen oder?

so hab ein wenig ausprobiert:

$sql = "
SELECT turnierklasse, COUNT(*) FROM ppc_anmeldungen GROUP BY turnierklasse";

$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}

$result = mysql_query ( $sql );

while ( $row = mysql_fetch_row ( $result ) )
{
  echo $row[0] . ' : ' . $row[1] .  '<br>';
}

bringt dann als ergebnis: stimmt auch
Damen : 2
Herren A : 5
Herren B : 3
Herren C : 1

da fehlt jetzt aber die gesamt anzahl

ich würde das ganz aber gerne später so haben:
Aktuelle Teilnehmerübersicht:
Bisher sind insgesamt (X) Meldungen zum Turnier 2009 bei uns eingegangen! (X = 11)

Teilnehmer (X) zu den gemeldeten Teilnehmer Damen (X = Damen: 2)
Teilnehmer (X) zu den gemeldeten Teilnehmer Herren A (X = Herren A: 5)
Teilnehmer (X) zu den gemeldeten Teilnehmer Herren B (X = Herren B: 3)
Teilnehmer (X) zu den gemeldeten Teilnehmer Herren C (X = Herren C: 1)

kursiv geschriebenes würde ich gerne weiter verlinken (jedes ein anderer link)

bin jetzt schon nen kleinen schritt weiter:

//Datenbank verbinden
include "../zugang_2.php.inc";

error_reporting(E_ALL);

$sql = "
SELECT turnierklasse, COUNT(*) FROM ppc_anmeldungen GROUP BY turnierklasse";

$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}

$result = mysql_query ( $sql );

$links = array(
"Damen" => "<a href=ppc2009Damen.php>Damen</a>",
"Herren A" => "<a href=ppc2009HerrenA.php>Herren A</a>",
"Herren B" => "<a href=ppc2009HerrenB.php>Herren B</a>",
"Herren C" => "<a href=ppc2009HerrenC.php>Herren C</a>"
);

echo "<p><b>Aktuelle Teilnehmerübersicht:</b></p>";
echo "<p>Bisher sind insgesamt <b>" . $???? . "</b> Meldungen zum Turnier 2009 bei uns eingegangen!</p>";

while (list($turnierklasse, $teilnehmeranzahl,) = mysql_fetch_row ($result))
{
  echo 'Teilnehmer ' . $turnierklasse . ': <b>'  . $teilnehmeranzahl .  '</b> zu den gemeldeten Teilnehmer ' . $links[$turnierklasse] . '<br>';
  }

mysql_close($link);

ausgabe ergibt dann:
Aktuelle Teilnehmerübersicht:
Bisher sind insgesamt ??? Meldungen zum Turnier 2009 bei uns eingegangen!
Teilnehmer Damen: 2 zu den gemeldeten Teilnehmer Damen
Teilnehmer Herren A: 5 zu den gemeldeten Teilnehmer Herren A
Teilnehmer Herren B: 3 zu den gemeldeten Teilnehmer Herren B
Teilnehmer Herren C: 1 zu den gemeldeten Teilnehmer Herren C

wie komme ich jetzt die gesamt meldungen hin? sind mit ??? gekennzeichnet.

und was mach ich wenn ich 0 teilnehmer habe??? bisher verschwindet dann die gesamt reihe

würde mich freuen wenn sich dem jemand annehmen könnte und mir behilflich wäre

danke

keine experten hier???

SELECT COUNT(*) as count
FROM tabelle
ORDER BY klasse;

gibt in etwa so etwas zurück:

[quote]klasse | count

herren a | 5
herren b | 3
herren c | 10
damen | 4[/quote]

mit meinem code:

kommt folgendes ergebnis raus: (denkt sich ja mit deinem ergebnis michi)
Teilnehmer Damen: 2 zu den gemeldeten Teilnehmer Damen
Teilnehmer Herren A: 5 zu den gemeldeten Teilnehmer Herren A
Teilnehmer Herren B: 3 zu den gemeldeten Teilnehmer Herren B
Teilnehmer Herren C: 1 zu den gemeldeten Teilnehmer Herren C

soweit so gut, damit bin ich ja auch einverstanden.

ich würde jetzt gerne noch die gesamtanzahl rausbekommen

und wenn kein teilnehmer da ist dann soll 0 erscheinen!
möglich?

wenn ja wie

// nimm nur den hier:

$sql = "SELECT COUNT(*) AS count FROM tabelle";

// ... abfrage

if($result->count < 1)
echo "Keine Einträge gefunden";

kommt nur keine einträge gefunden

sind aber welche drin

du hattest bisher immer mysql_fetch_row genutzt, in seinem Beispiel muss es mysql_fetch_object sein:

[code]// nimm nur den hier:
$sql = “SELECT COUNT(*) AS count FROM tabelle”;

// … abfrage
$query = mysql_query($sql);
$result = mysql_fetch_object($query);

if($result->count < 1)
echo “Keine Einträge gefunden”;[/code]

ja, ok, da hätte ich etwas “benutzerfreundlicher” sein können :wink:

Klappts jetzt?

jo jetzt läufts wie ichs gerne hätte

danke für eure aller hilfe