Problem : If Schleife

SantaCruze

Erfahrenes Mitglied
Hallo zusammen. Und zwar habe ich ein Problem mit einer If Schleife. Das ganze sieht so aus :

PHP:
function get_kolo_limit($id)
    {
	$punkte  = $this->query("SELECT * FROM user_statistik WHERE userid='$id' AND art='all';");
	$this->err();  
	  if($punkte >= 0 && $punkte<= 4999 )
	  {
	  $limit = 5;
	  return $limit;
	  }
	  elseif($punkte >= 5000 &&$punkte <= 9999)
	  {
	  $limit = 6;
	  return $limit;
	  }
	  elseif($punkte >= 10000 && $punkte<= 19999)
	  {
	  $limit = 7;
	  return $limit;
	  }
}

Nun will ich halt wie man sicher sehen kann anhand einer bestimmten Punktzahl ein Limit ausgeben lassen, habe testweise in der ID mal die Punkte geändert auf 15000 wo er mir normal Limit 7 ausgeben müsste, aber er gibt mir nur Limit 5 aus, also die erste If Anweisung.
 
Schaut so aus als liegt es bei der Datenbank Abfrage dort bekommst nur die Datensatz Anzahl zurück nicht den gesuchten wert.

Gib doch mal $Punkte mit echo voher aus. (mysql_fetch_array($this->query_id);)

Mfg Splasch
 
Erstmals: If ist keine Schleife ;)

Was macht $this->query()? Gibt das eine Zahl zurück? Hast du dir $punkte ausgeben lassen und bist sicher, dass es eine Zahl ist? Oder macht deine Funktion query() vielleicht wirklich nur den Query oder den Query+fetch_array/assoc/object?

echo $punkte; wirds zeigen :)

Kleine Frage nebenbei: Warum schreibst du nicht gleich return 5 anstatt $limit = 5; return $limit?
 
Okay hat sich erledigt ;) Hab die Tips beherzigt und Stück für Stück alles ausgelesen. Lösung war ganz einfach, er hat nen Array ausgelesen anstatt die eigentliche Tabellen Zelle. Daher konnte die If Abfrage garnicht hinhauen :) Habs nun mit $row["punkte"] hinbekommen. Danke an die Tips :D
 
Zurück