0

This needs to be adding multiple rows to the database but it's only adding the first question in the array. Any ideas?

function addNewApp($question, $type, $username, $servername){  
      $time = time();  
      $q  = "INSERT INTO ".TBL_APPLICATIONS." VALUES ('0', '$username', '$servername', '', $time)";  
      if(mysql_query($q, $this->connection)){  
            return true;  
          }else{  
            return false;    
          }  
      for ($x=0; $x<count($question); $x++) {  
        $q2 = "INSERT INTO ".TBL_QUESTIONS." SET   `text`='".mysql_real_escape_string($question[$x])."', `id`='0', `servername`='$servername', `type`='$type[$x]'";  
          if(mysql_query($q2, $this->connection)){  
            return true;  
          }else{  
            return false;  
          }  
      }  
   }

1 Answer 1

2

You are returning true within the loop.

if(mysql_query($q2, $this->connection)){
   return true;
}

The return statement ends your function and therefor your loop as well. So I'd do something like this:

if(!mysql_query($q2, $this->connection)){ //if correct, don't do anything
   echo "THERE WAS AN ERROR"; // or whatever sort of error reporting
}
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.