Jump to content

[SOLVED] Parse error: syntax error, unexpected ';'


Colton.Wagner

Recommended Posts

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.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.