重复输入mysql数据库

i have a problem when inserting data to my database. but when i'm echoing it doesn't duplicate. here's my code:

    foreach($_POST['purpose'] as $i => $a){
         echo $a."-".$i."<br />";
         if($_POST['purpose'][$i] == "recieved"){
              $purpose[$i] = "'1','0','0','0','0'";
         } elseif($_POST['purpose'][$i] == "released"){
              $purpose[$i] = "'0','1','0','0','0'";
         } elseif($_POST['purpose'][$i] == "recalled"){
              $purpose[$i] = "'0','0','1','0','0'";
         } elseif($_POST['purpose'][$i] == "charges"){
              $purpose[$i] = "'0','0','0','1','0'";
         } elseif($_POST['purpose'][$i] == "adjustments"){
              $purpose[$i] = "'0','0','0','0','1'";
         }   
         $query = "INSERT INTO responsibility_center VALUES(
               '',
               '".$_POST['or_number']."',
               '".$_POST['response'][$i]."', 
               $purpose[$i])";
         echo $query."<br />";
         $result1 = mysql_query($query) or die(mysql_error()." inserting responsibility center");

          $responseid = mysql_insert_id();

          $query2 = "INSERT INTO particulars VALUES (
                     '',
                     '".$responseid."',
                     '".$_POST['details'][$i]."')";
          echo $query2."<br />";
          $result2 = mysql_query($query) or die(mysql_error()." inserting particulars");
    }

i dont know where in my code is wrong cause it doesn't give me errors. :/

$result2 = mysql_query($query)

that should be

$result2 = mysql_query($query2)

This is why you should name your variables something more meaningful than $query. Please also read through this: http://bobby-tables.com/php.html