WordPress db prepare

From the Codex, 2nd parameter for the prepare() method:

(int|string|array) The value to substitute into the placeholder. Many
values may be passed by simply passing more arguments in a
sprintf()-like fashion. Alternatively the second argument can be an
array containing the values as in PHP’s vsprintf() function.
Care must
be taken not to allow direct user input to this parameter, which would
enable array manipulation of any query with multiple placeholders.
Values must not already be SQL-escaped.

So you can directly pass your input array, as long as you have same number of “%s” placeholders in your query string as the array length.

Btw in your code above the $owner_id, $address1, $address2, $city, $zip, $country variables are undefined. Did you miss extract($inputArray) ?