16

I am having this error cURL error 3: <url> malformed (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) after saving/creating multiple models to database.

I have this in my controller:

public function storeTruck(Request $request){
    //Save Company Detail
    $company = Company::Create($request->only(['company']));
    // Save Trucker Info
    $request->request->add(['password'=>bcrypt('trucker')]);
    $request->request->add(['company_id'=>$company->id]);
    $trucker = Trucker::create( $request->only([
        'first_name','last_name','company',
        'email','contact', 'password', 'company_id'
    ]));
    return view('admin.truck.list'); 
}

Those models are saved successfully in database but it will then proceed to a cURL error 3 problem. What causes this error based on the codes? Please advice. Thanks.

Jay Marz
  • 1,861
  • 10
  • 34
  • 54

4 Answers4

12

This error is due to the URL is not correct. Check the cURL error 3: check this link

KPK
  • 570
  • 3
  • 15
2

I made a mistake when instantiating the the Guzzle Client Object:

Rather than assigning my baseUrl to th 'base_uri' key as below,

$client = new Client([
        'base_uri' => $this->baseUrl
    ]);

I assigned the $baseUrl to the 'base_url' key, which does not exist.

$client = new Client([
        'base_url' => $this->baseUrl
    ]);

Be careful when doing this. make sure you use 'base_uri' key instead of 'base_url'.

MT_Shikomba
  • 129
  • 1
  • 6
  • 1
    Damn I've I been looking in all the wrong places. I hate loosing time on a simple Typo. Thanks, that fixed my issue. Just rephrasing a bit though. You say "base_uri" key both times. :) – Stéphan Champagne Feb 22 '22 at 19:20
2
  1. Download download cacert.pem.
  2. Save the file "cacert.pem" to your computer. For example C:\PHP\cacert.pem
  3. Add the location of the "cacert.pem" file to your php.ini file.
    Search for [curl.cainfo] in your php.ini file and update the following line:
    curl.cainfo = "C:\PHP\cacert.pem"
  4. Restart your web server.
php artisan config:cache
php artisan cache:clear
Sarwar Ahmed
  • 588
  • 2
  • 6
  • 14
0

I received the same error on Guzzle with WPEngine. I solved it by changing the protocol on the base_uri, from 'https' to 'http'

nicolasDevDes
  • 107
  • 1
  • 6