Could you please modify a phpcurl to simulate the post request content and download the file?

Source: Internet
Author: User
Please help modify the phpcurl to simulate the post request content and download the file. the following code uses curl to simulate the post request link and then directly displays the file content, how to modify it to download the request directly 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;


Reply to discussion (solution)

Do not echo $ ret;
Write $ ret to the file. Save

Do not echo $ ret;
Write $ ret to the file. Save



Tried to use
Header ("Content-Type: application/force-download ");
$ Ret;
The PHP blank file is downloaded.
Use
$ Filename = $ ret;
Header ("Content-Type: application/force-download ");
Header ("Content-Disposition: attachment; filename =". basename ($ filename ));
Readfile ($ filename );
Download a bunch of PHP files with garbled characters.

The downloaded file name is defined as the suffix of. torrent. this seed is 5. Flights. Up.2014.LIMITED. 720p. BRRip. XviD. AC3-RARBG?

$ 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

$ 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

Thank you very much for the technical support provided by the xuzuning moderator and BingoVictor. I used File A to obtain the requested content, then downloaded file A with file B, and customized the name and suffix.
The method provided by the moderator is more efficient and convenient. Thank you.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.