PHP syntax error help

Soldato
Joined
7 Jan 2007
Posts
10,607
Location
Sussex, UK
PHP:
foreach ($variable1 as $element) {
	if ($variable1 != $LastWeeksVariable && is_numeric($element) && $d=="Tue") {
        mysql_query("INSERT INTO table1 
					(idproducts, info1, info2, info3, info4, info5, info6, fullinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
or die(mysql_error());  

mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 2 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
			WHERE idsomething = '9'")
    or die(mysql_error());

		break 1;
	foreach ($variable1 as $element) {
	} if ($variable1 != $LastWeeksVariable && is_numeric($element) && $d=="Thu") {
        mysql_query("INSERT INTO table1 
					(idproducts, info1, info2, info3, info4, info5, info6, fullinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
or die(mysql_error());  

mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 2 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
			WHERE idsomething = '9'")
    or die(mysql_error());

		break 1;
	
	foreach ($variable1 as $element) {	
	} if ($variable1 != $LastWeeksVariable && is_numeric($element) && $d=="Sat") {
        mysql_query("INSERT INTO table1 
					(idproducts, info1, info2, info3, info4, info5, info6, fullinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
or die(mysql_error());  

mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 3 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
			WHERE idsomething = '9'")
    or die(mysql_error());

		break 1;
	
		} else {
        echo "'{$element}' is NOT numeric or results same as last week, or It isn't Thursday", PHP_EOL;
    }
}

mysql_close();

Can anyone spot the syntax error?
 
OK I now have this, which is much easier to follow. However, it is inserting 7 lines into my db, because of the loop. How do I make it only do a first pass then stop?

It is entering the same line 7 times into my db now.

PHP:
foreach ($variable1 as $element) {
 if($variable1 != $variable2 && is_numeric($element) && isset($d) && $d != '')
    {
        switch($d)
        {
            case 'Tue': 
						mysql_query("INSERT INTO table1
						(idproducts, info1, info2, info3, info4, info5, info6, totalinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
						or die(mysql_error());  

						mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 2 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
						WHERE idtable2 = '9'")
						or die(mysql_error());
                break;
            case 'Thu':
						mysql_query("INSERT INTO table1
						(idproducts, info1, info2, info3, info4, info5, info6, totalinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
						or die(mysql_error());  

						mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 2 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
						WHERE idtable2 = '9'")
						or die(mysql_error());
                break;
            case 'Sat': 
                        mysql_query("INSERT INTO table1
						(idproducts, info1, info2, info3, info4, info5, info6, totalinfo1, drawndate, drawnyear) VALUES('9', '$variable1[0]', '$variable1[1]', '$variable1[2]', '$variable1[3]', '$variable1[4]', '$variable1[5]', '$variable1[6]', NOW(), NOW())") 
						or die(mysql_error());  

						mysql_query("UPDATE table2 SET dates = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 3 DAY), INTERVAL 19 HOUR), INTERVAL 00 MINUTE)
						WHERE idtable2 = '9'")
						or die(mysql_error());
                break;
            default:
						echo "error";
        }
    }
}
 
Last edited:
Back
Top Bottom