[PHP/MySQL] Ausgabe Fehler

tkiela

Hüüüüäääh? :):)
25 August 2007
634
44
PHP:
		 		 $connect = mysql_query("SELECT id, img, title, reload, zeit, preis FROM paidbanner WHERE uebrig > '0' and status='1' ORDER BY rand(UNIX_TIMESTAMP()*UNIX_TIMESTAMP()) LIMIT 10");
		 while ( $zeile = mysql_fetch_object($connect))
		 	{
			 $bannerid = $zeile->id;
			 $reloadzeile = mysql_fetch_object(mysql_query("SELECT reload FROM bannerreload WHERE bannerid=". quote_smart($bannerid)." && userid=". quote_smart($userid)));
			 $reload = $reloadzeile->reload;
			 $time = time();
			 
			 if ( $reload < $time )
			 	{
				 $img = $zeile->img;
				 $title = $zeile->title;
				 $reload = $zeile->reload;
				 $zeit = $zeile->zeit;
				 $verg = $zeile->preis;
	mysql_query("DELETE FROM `bannerreload` WHERE `reload` <= '".$time."'");
				 include("templates/paidbanner.tpl");

				}
			}

So lass ich mir Paidbanner ausgeben. Allerdings werden jetzt, wo nur noch 20 vorhanden sind, die nicht im Reload sind, nicht mehr 10 auf einmal angezeigt, sondern immer unter 10. Mal 4, mal 5, immer verschieden.

Wodran liegt das?
 
Wenn ich das beim überfliegen richtig gesehn habe liegt das einfach daran, dass du 10 Banner auswählst und jeden nicht anzeigst der grad in der Reloadsperre ist. Somit werden auch nur mit Glück 10 angezeigt.
Entweder du machst das alles in einem Querry oder du holst dir immer alle Banner per Zufall raus und brichst ab wenn du 10 angezeigst hast.