Bij het uitvoeren van onderstaande code krijg ik de volgende foutmelding:

Warning: Division by zero on line 48

Ik heb er niet zoveel verstand van, dus zou niet weten hoe ik dit moet oplossen. Wie kan me helpen?

<?php
	//
	//Most goals scored in one match
	//
	$maxgoals = mysql_query("
	SELECT
	MAX(LeagueMatchHomeGoals + LeagueMatchAwayGoals) AS summa
	FROM tplls_leaguematches
	WHERE
	LeagueMatchSeasonID LIKE '$defaultseasonid'
	", $connection)
	or die(mysql_error());

	$temp_data = mysql_fetch_array($maxgoals);
	$temp_number = $temp_data['summa'];

	mysql_free_result($maxgoals);

	//
	//Query to get max values
	//
	$maxgoals = mysql_query("
	SELECT
	O.OpponentName AS hometeam,
	OP.OpponentName AS awayteam,
	DATE_FORMAT(LM.LeagueMatchDate, '$print_date') AS date,
	LM.LeagueMatchHomeGoals AS homegoals,
	LM.LeagueMatchAwayGoals AS awaygoals
	FROM
	tplls_leaguematches AS LM,
	tplls_opponents O,
	tplls_opponents OP
	WHERE
	O.OpponentID = LM.LeagueMatchHomeID AND
	OP.OpponentID = LM.LeagueMatchAwayID AND
	(LM.LeagueMatchHomeGoals + LM.LeagueMatchAwayGoals) = '$temp_number' AND
	LeagueMatchSeasonID LIKE '$defaultseasonid'
	ORDER BY LM.LeagueMatchDate
	", $connection)
	or die(mysql_error());

	//
	//Print max aggregate scores
	//
	$i = 0;
	while($data = mysql_fetch_array($maxgoals))
	{
		if($i % 0)
			$temp_color = $bg1;
		else
			$temp_color = $bg2;

		echo"
		<tr bgcolor=\"$temp_color\">
		<td align=\"left\" valign=\"middle\">
		$data[date]
		</td>

		<td align=\"center\" valign=\"middle\">
		$data[hometeam]
		</td>

		<td align=\"center\" valign=\"middle\">
		$data[awayteam]
		</td>

		<td align=\"center\" valign=\"middle\">
		$data[homegoals] - $data[awaygoals]
		</td>
		</tr>
		";

		$i++;
	}

	mysql_free_result($maxgoals);

	?>
heb je error reporting op E_ALL staan ?

ik heb het idee dat hij ergens een NULL waarde terug stuurt
if($i % 0)

moet zijn

if($i % 2 == 0)
@terence, ik gebruik ook altijd if ($i%2)

is altijd true/false

[edit] maar idd if ($i % 0 ) moet zijn if($i % 2)[/edit]


Die fout krijg je als je ergens door 0 probeert te delen.
Offtopic: Een LIKE zonder gebruik van % kun je beter vervangen door een =. Dat is sneller.

LIKE is trouwens toch al een laatste redmiddel, met LEFT() en SUBSTRING() kun je vaak hetzelfde bereiken, maar dan sneller.
Inderdaad dat was het, bedankt allen voor de snelle hulp!
graag gedaan, daar zijn we hier voor toch ;) ?
MikeY schreef op 29.02.2008 13:37
@terence, ik gebruik ook altijd if ($i%2)

is altijd true/false


nee het is altijd 0 of 1
dat php het intepreteert als false/true is een tweede

Reageren