Ich baue grade eine Turnierseite für unsere Liga und brauche eure Hilfe. Bis jetzt habe ich die angemeldeten Spieler in ein Array eingegeben und sie den Tischen über das nachstehende Script zugewiesen:
Um das Ganze flexibler zu gestalten, würde ich gerne das Array über eine Datenbank-Abfrage füllen. Die zugehörige Tabelle anmeldungen hat die Struktur ID - Teilnehmer
Diese Abfrage funktioniert leider nicht, obwohl sie an anderer Stelle (sie wird für den selben Zweck benutzt) funktioniert:
$sql = "SELECT `id`, `teilnehmer`
FROM `anmeldungen` order by teilnehmer ASC" . $where . "
LIMIT " . ($start - 1) . ", " . $limit;
Diese Abfrage funktioniert leider nicht, obwohl sie an anderer
Stelle (sie wird für den selben Zweck benutzt) funktioniert:
Und was macht man als erstes, wenn eine Datenbankabfrage nicht funktioniert? Insbesondere, wenn man diese erst aus Variablen aufbaut?
Richtig! Man lässt sie sich einfach mal ausgeben!
$sql = „SELECT id, teilnehmer
FROM anmeldungen order by teilnehmer ASC“ . $where . "
LIMIT " . ($start - 1) . ", " . $limit;
$where ist nicht gesetzt (macht keinen Unterschied), aber $start ist auch nicht gesetzt. Ich würde wetten, dass das Subtrahieren einer nicht existenten Variable einen Output erzeugt, der nicht ins Statement passt.
Außerdem steht dann dahinter ein Komma und dann kommt nichts mehr, weil nämlich auch $limit nicht existiert.
Vielen Dank für eure Hilfe sagt
Richtig Programmieren lernen heißt auch richtig Debuggen lernen.
(Ist keine klugscheißerische Weisheit, sondern ein guter Rat).
Damit krieg ich alle schön in eine Tabelle. Mein Hauptproblem ist aber, dass ich die Teilnehmer in Vierergruppen aufteilen muss. Wie krieg ich das denn hin?
Damit krieg ich alle schön in eine Tabelle. Mein Hauptproblem
ist aber, dass ich die Teilnehmer in Vierergruppen aufteilen
muss. Wie krieg ich das denn hin?
Also ein rückgabe von vielen reihen hast du ja schon rausbekommen .
aber , bei dir sind die nur für die ausgabe vorhanden . du musst aber jede reihe einsammeln .
z.b.
function getArraySQL($sql) {
$aEntry = array();
if ( !$res=mysql_query($sql)) {
echo "Error -> ".$sql;
exit;
}
while ($row = mysql_fetch_array($res,MYSQL_ASSOC)) {
array_push($aEntry,$row);
}
return $aEntry;
}$myPlayers = getArraySQL('SELECT Teilnehmer,Gruppe FROM Tabelle ');
deine gruppen aufteilung solltest du also in der datenbank festhalten .
wenn du nun nach gruppen ausgeben willst kannst du das z.b. mit foreach machen und je nach gruppenwert es in extra variablen für die html ausgabe packen .
z.b.
$gruppen = array(’ Gruppe 1 ‚,‘ Gruppe 2 ‚,‘ Gruppe 3 ‚,‘ Gruppe 4 ');
/* listenstarttag */
foreach($gruppen as &$gruppe) { $gruppe.="
"; }
/* liste */
foreach ($myPlayers as $aplyer) {
$gruppen[($aplyer[‚Gruppe‘]-1)] .= „- „.$aplyer[‚Teilnehmer‘].“
„;
}
/* listenendtag */
foreach($gruppen as &$gruppe) { $gruppe.=““; }
/* ausgabe gruppen */
foreach($gruppen as $gruppe) { echo $gruppe; }