gutterboy Posted September 11, 2014 Report Posted September 11, 2014 Hello, I'm attempting to edit users via the API and the source docs seem to be lacking a little in this area compared to the create user, so not sure if I have done something wrong...... but I'm basically doing this: if (empty($user_data['country_iso'])) { // We can't pass in a state without a country, so make the state code empty as well $user_data['state_iso'] = ''; } $data = array ( 'client_id' => $user_data['blesta_id'], 'vars' => array ( 'company' => $user_data['tax_company_name'], 'first_name' => $user_data['first_name'], 'last_name' => $user_data['last_name'], 'address1' => $user_data['address'], 'city' => $user_data['city'], 'zip' => $user_data['zip_code'], 'email' => $user_data['email'], 'numbers' => array ( 0 => array ( 'number' => $user_data['phone'] ) ) ) ); if (!empty($user_data['country_iso'])) { // Add country $data['vars']['country'] = $user_data['country_iso']; } if (!empty($user_data['state_iso'])) { // Add country $data['vars']['state'] = $user_data['state_iso']; } $this->api->put("clients", "edit", $data); $this->api points to the Blesta SDK. This is the error output I get back: object(stdClass)[9] public 'error' => object(stdClass)[10] public 'message' => string 'An unexpected error occured.' (length=28) public 'response' => string 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `id` = '16'' at line 1' (length=219) Am I passing in the data wrong or doing something incorrectly? Is there a way I can make Blesta output the query it is trying to run? Thanks!
Tyson Posted September 11, 2014 Report Posted September 11, 2014 I'm not sure why you receive an SQL error, but I see the values you're setting for Clients::edit aren't supported by that API call. Sounds like you want Contacts::edit.
gutterboy Posted September 11, 2014 Author Report Posted September 11, 2014 On 9/11/2014 at 4:55 PM, Tyson said: I'm not sure why you receive an SQL error, but I see the values you're setting for Clients::edit aren't supported by that API call. Sounds like you want Contacts::edit. Hmmm ok. So a client I created with clients::create I need to use contacts::edit and NOT clients::edit to edit their details?
Nelsa Posted September 11, 2014 Report Posted September 11, 2014 Today I tested virtualizor module and Blesta also give sql syntax error when add/update package but only if set wrong/unknown value for required parameters,I supose you have similar situation.
Tyson Posted September 11, 2014 Report Posted September 11, 2014 On 9/11/2014 at 5:07 PM, gutterboy said: Hmmm ok. So a client I created with clients::create I need to use contacts::edit and NOT clients::edit to edit their details? You can edit a client via Clients::edit, but most information related to a client (e.g. first name, email, address, etc.) belongs to the primary contact. Each client has a contact (i.e. contact type is 'primary'), but it's also possible to add additional contacts under each client.
gutterboy Posted September 12, 2014 Author Report Posted September 12, 2014 On 9/11/2014 at 10:57 PM, Tyson said: You can edit a client via Clients::edit, but most information related to a client (e.g. first name, email, address, etc.) belongs to the primary contact. Each client has a contact (i.e. contact type is 'primary'), but it's also possible to add additional contacts under each client. Ahh ok, makes sense. Thanks!
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now