This article mainly introduces how to modify a phpcurl to simulate the post request content and download the file, you can refer to the following code to use curl to simulate the post request link and then directly display the file content. how to modify it to directly download the requested content without displaying the content. what about torrent files?
Function curl_post ($ header, $ data, $ url) {$ ch = curl_init (); $ res = curl_setopt ($ ch, CURLOPT_URL, $ url); curl_setopt ($ ch, optional, FALSE); curl_setopt ($ ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ ch, CURLOPT_HEADER, 0); curl_setopt ($ ch, CURLOPT_POST, 1); curl_setopt ($ ch, CURLOPT_POSTFIELDS, $ data); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ ch, CURLOPT_HTTPHEADER, $ header); $ result = curl_exec ($ ch ); curl_close ($ ch); if ($ result = NULL) {return 0;} return $ result;} $ url = 'http: // www.bttiantang.com/download4.php '; $ header = array ("Host: www.bttiantang.com", "Content-Type: application/x-www-form-urlencoded", 'user-Agent: Mozilla/4.0 (compatible; MSIE. 0; Windows NT 6.1; Trident/4.0; SLCC2;) '); $ data = 'action = download & id = 26881 & uhash = eecf3d3071a7b672c314bc39 '; $ ret = curl_post ($ header, $ data, $ url); // you need to change the content to echo $ ret for file download;
------ Solution ----------------------
Do not echo $ ret;
Write $ ret to the file. Save
------ Solution ----------------------
$ Ret = curl_post ($ header, $ data, $ url); // you need to change the content to file download $ filename = 'x. torrent '; header ("Content-Type: application/force-download"); header ("Content-Disposition: attachment; filename = $ filename"); echo $ ret;
The downloaded x. torrent is opened
This article will share with you the solution for modifying the php curl to simulate post request content and downloading files. I hope you will like it. please stay tuned to this site, new content is updated on this site every day. thank you .!