News:

AbanteCart v1.4.2 is released.

Main Menu
support

how to save to database via api

Started by shera85, March 15, 2019, 11:13:46 PM

Previous topic - Next topic

shera85

Hi,

I want to extend api to insert into db but for some reason it's returning empty 200 message all the time. Even I'm trying to pass static response it's still giving 200 with empty response.

class ControllerApiAccountDriverLocationCreate extends AControllerAPI
{
    public $data;

    public function post()
    {
       
        $this->extensions->hk_InitData($this, __FUNCTION__);
       
        $request_data = $this->rest->getRequestParams();

        $order_id = $request_data["order_id"];
        $driver_id = $request_data["driver_id"];
        $lat = $request_data["latitude"];
        $long = $request_data["longitude"];

        if ($this->customer->isLoggedWithToken($request['token'])) {
            $this->rest->setResponseData(array('error' => 'Already Logged in. Can not create new account.'));
            $this->rest->sendResponse(401);
            return null;
        }

        $this->loadModel('account/customer');
        $this->loadLanguage('account/driverlocation');
             
        $result = $this->model_account_customer->saveDriverLocation($order_id, $driver_id, $lat, $long);
        $this->data["result"] = $result;

       
        $this->extensions->hk_UpdateData($this, __FUNCTION__);

        $this->rest->setResponseData($this->data);
        $this->rest->sendResponse(200);
    }

}


and model is

   public function saveDriverLocation($order_id, $driver_id, $lat, $long){


        $this->db->query("INSERT INTO `abki_driver_location`
                    SET order_id = '".(int)$order_id."',
                        driver_id = '".(int)$driver_id."',
                        latitude = '".$lat."',
                        longitude = '".$long."',
                        created_date = NOW()");

        return $this->db->getLastId();

    }


What am I doing wrong here

Thanks in advance.

abolabo

hmm.. Your code looks fine..try to debug (with logging $this->log->write(''dddd') or something like that..)
Be sure you sends post-request with token.
"No one is useless in this world who lightens the burdens of another."
― Charles Dickens

appsted

It is not difficult to save database from API, If you have faces any type of issue then you can Hire web developers and solve your all query.

Pulsometros2020

Hi
Maybe it should be verified that the record I want to insert exists or is not empty.
I think a good tutorial shouldn't be a problem.
I suppose that hiring a freelance web developer could solve the problem.
regards ;)

MarkOrion

An API is not a database. It is an access point to an app that can access a database. In this post, we will focus on these specific kinds of APIs — web based APIs that return data in response to a request made by a client. They allow us to go get data from outside sources.

Forum Rules Code of conduct
AbanteCart.com 2010 -