I got a problem with this query, error at line 3. SQL query: CREATE EVENT event ON SCHEDULE EVERY1 SECOND DO BEGIN UPDATE village_buildings SET done =1 WHERE ( endtime < UNIX_TIMESTAMP( ) ); MySQL said: Documentation #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3 Code (markup): Can someone help me to fix this sql code? I can't see why it wrong, if i try this command UPDATE village_buildings SET done=1 WHERE(endtime<UNIX_TIMESTAMP()); Code (markup): alone works fine. CREATE EVENT event ON SCHEDULE EVERY 1 SECOND DO BEGIN UPDATE village_buildings SET done=1 WHERE(endtime<UNIX_TIMESTAMP()); DECLARE ppid INT; DECLARE action,build TEXT; DECLARE curl CURSOR FOR SELECT name,town_id,action FROM village_buildings WHERE done=1; OPEN cur1; BEGIN DECLARE EXIT HANDLER FOR NOT FOUND BEGIN END; LOOP FETCH cur1 INTO build,ppid,action; IF action == 'upgrade' THEN UPDATE village_players_villages SET build=build+1 WHERE id=ppid; ELSE UPDATE village_players_villages SET build=build-1 WHERE id=ppid; END IF; END LOOP; END; CLOSE cur1; END Code (markup):
Try this : $sql = mysql_query("UPDATE village_buildings SET done='1' WHERE endtime<UNIX_TIMESTAMP()"); PHP: