Quick and dirty query generator

// November 12th, 2008 // PHP

Again, I needed to quicky put in WHERE and ANDs depending on how many parameters were submitted.

Instead of putting multiple conditionals, I just put them into an array:

$sqlarray = array();
if($year)
	$sqlarray[] = "(table.Year = " . $year . ")";
if($week)
	$sqlarray[] = "(table.Week = " . $week . ")";

if($otherparameter)
	  $sqlarray[] = "(otherparam = '" . $otherparam . "')";

$sql = "";
if(sizeof($sqlarray) > 0)
{
	$sql = " WHERE ";
	for($i = 0; $i < sizeof($sqlarray); $i++)
	{
		$sql = $sql . $sqlarray[$i];
		if($i != sizeof($sqlarray) - 1)
			$sql = $sql . " AND ";
	}
}

Leave a Reply