Colton.Wagner Posted October 5, 2009 Share Posted October 5, 2009 I am Parsing a very large xml document into a mysql database here is the error I am getting. Parse error: syntax error, unexpected ';' in on line 51 Here is the code with personal information removed. <?php session_start(); $_SESSION['parts'] = array(); ?> <html> <head> <link rel="shortcut icon" href="/favicon.ico" /> <title> Title </title> </head> <body> <?php mysql_connect('l', '', ''); mysql_select_db(''); $parser = xml_parser_create(); function start($parser, $element_name, $element_attrs) { switch($element_name) { case "warehousloc": // this is the start of a set of data $_SESSION['parts'] = array(); // create an empty set break; case "description": $query = sprintf("INSERT INTO values (warehouseloc, trackingnumber, partnumber, name, imagename, primarycatalog primaryyear, primarypage, orgincountry, price, catagory1, catagory2, catagory3, catagory4, web_catagory1, web_catagory2, web_catagory3, description) VALUES ('%s','%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s','%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d)", mysql_real_escape_string($_SESSION['parts']['warehouseloc'], mysql_real_escape_string($_SESSION['parts']['trackingnumber'], mysql_real_escape_string($_SESSION['parts']['partnumber'], mysql_real_escape_string($_SESSION['parts']['name'], mysql_real_escape_string($_SESSION['parts']['imagename'], mysql_real_escape_string($_SESSION['parts']['primarycatalog'], mysql_real_escape_string($_SESSION['parts']['primaryyear'], mysql_real_escape_string($_SESSION['parts']['primarypage'], mysql_real_escape_string($_SESSION['parts']['origincountry'], mysql_real_escape_string($_SESSION['parts']['price'], mysql_real_escape_string($_SESSION['parts']['category1'], mysql_real_escape_string($_SESSION['parts']['catagory2'], mysql_real_escape_string($_SESSION['parts']['catagory3'], mysql_real_escape_string($_SESSION['parts']['catagory4'], mysql_real_escape_string($_SESSION['parts']['web_catagory1'], mysql_real_escape_string($_SESSION['parts']['web_catagory2'], mysql_real_escape_string($_SESSION['parts']['web_catagory3'], mysql_real_escape_string($_SESSION['parts']['description'], mysql_query($query) break; default: } } function stop($parser, $element_name) { } function char($parser,$data) { $data = trim($data); if($data != ''){ if(!isset($_SESSION['parts']['warehouseloc'])){ $_SESSION['parts']['warehouseloc'] = $data; } elseif(!isset($_SESSION['parts']['trackingnumber'])){ $_SESSION['parts']['trackingnumber'] = $data; } elseif (!isset($_SESSION['parts']['partnumber'])){ $_SESSION['parts']['partnumber'] = $data; } elseif (!isset($_SESSION['parts']['name'])){ $_SESSION['parts']['imagename'] = $data; } elseif (!isset($_SESSION['parts']['primarycatalog'])){ $_SESSION['parts']['primarycatalog'] = $data; } elseif (!isset($_SESSION['parts']['primaryyear'])){ $_SESSION['parts']['primaryyear'] = $data; } elseif (!isset($_SESSION['parts']['primarypage'])){ $_SESSION['parts']['primarypage'] = $data; } elseif (!isset($_SESSION['parts']['origincountry'])){ $_SESSION['parts']['origincountry'] = $data; } elseif (!isset($_SESSION['parts']['price'])){ $_SESSION['parts']['price'] = $data; } elseif (!isset($_SESSION['parts']['catagory1'])){ $_SESSION['parts']['catagory1'] = $data; } elseif (!isset($_SESSION['parts']['catagory2'])){ $_SESSION['parts']['catagory2'] = $data; } elseif (!isset($_SESSION['parts']['catagory3'])){ $_SESSION['parts']['catagory3'] = $data; } elseif (!isset($_SESSION['parts']['catagory4'])){ $_SESSION['parts']['catagory4'] = $data; } elseif (!isset($_SESSION['parts']['web_catagory1'])){ $_SESSION['parts']['web_catagory1'] = $data; } elseif (!isset($_SESSION['parts']['web_catagory2'])){ $_SESSION['parts']['web_catagory2'] = $data; } elseif (!isset($_SESSION['parts']['web_catagory3'])){ $_SESSION['parts']['web_catagory3'] = $data; } elseif (!isset($_SESSION['parts']['description'])){ $_SESSION['parts']['description'] = $data; } } } xml_set_element_handler($parser, "start", "stop"); xml_set_character_data_handler($parser, "char"); $fp=fopen("file","r"); while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) or die (sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } xml_parser_free($parser); ?> </body> </html> I see where the error is at in my code but I do not understand why it is coming up. I can remove the break but it just moves the break to the next line. Quote Link to comment Share on other sites More sharing options...
Colton.Wagner Posted October 5, 2009 Author Share Posted October 5, 2009 The %d was thrown in by accedent that just converts the value to a binary integer. I took it out no errors. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.