Datenbank abfrage liefert nur ein Ergebnis.

Bossi28

Mitglied
Hi Leute habe mal eine Frage.

Habe diese Abfrage, aber leider liefert er mir immer nur ein Ergebniss, obwohl die id zweimal vorhanden ist.
Wieso?

PHP:
			public function getTeam() {
				$session_id = session_id();
			    $sql= sprintf("SELECT team_name FROM phpkit_teams,phpkit_session WHERE
				team_userid='2' AND team_status='aktiv'",
				mysql_real_escape_string($session_id));
				$result= mysql_query($sql);
				$datensatz= mysql_fetch_row($result);
				$team = $datensatz[0];
				return $team;

				}
 
Da du sprintf verwendest, gehe ich davon aus das der Inhalt von $session_id beim Vergleich "team_userid" verwendet werden soll.

So wie du es schreibst, bleibt da aber der Wert 2 stehen. Mach mal aus der Zahl 2 ein "%d", dann sollte der übergebene Wert in die Anweisung eingesetzt werden.

Zur Not lass dir mal mit eco den Inhalt von §sql anzeigen, dann weißt du was wirklich als Abfrage rauskommt.
 
mysql_fetch_row($result) wird immer nur ein Ergebnis liefern, egal, wieviel gefunden wurden. Willst Du alle Ergebnisse haben, müsstest Du mit While() durchlaufen und nach $team durchreichen.

PHP:
$team = array();
while($res = mysql_fetch_row($result))
{
   $team[] = $res;
}

# ---- Ausgabe $team ----
echo"<pre>";
var_dump($team);
echo"</pre>";

..mysql_fetch_row() liefert einen Datensatz aus dem Anfrageergebnis.. Wiederholtes Aufrufen .. liefert den nächsten Datensatz des Anfrageergebnisses oder FALSE..
http://php.net/manual/de/function.mysql-fetch-row.php

mfg chmee
 
Zurück