Hướng dẫn curl upload file php - curl tải lên tệp php
Có rất nhiều giải pháp để upload file lên server cho PHP như sử dụng form, ajax, ftp, scp, … Hôm nay vinasupport sẽ hướng dẫn các bạn sử dụng curl để upload file tới server sử dụng php. Show Để thực hiện tutorial này chúng ta cần 3 file sau:
Xử lý upload file tới serverFile: curl.php curl_file_create('data.txt'), 'description' => 'Upload file to server by url (vinasupport.com)' ]; // Set CURL options curl_setopt_array($curl, array( CURLOPT_URL => 'https://localhost/upload.php', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_VERBOSE => 1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => $fields, CURLOPT_SSL_VERIFYHOST => false, CURLOPT_SSL_VERIFYPEER => false )); //create the multiple cURL handle $mh = curl_multi_init(); //add the handle curl_multi_add_handle($mh, $curl); //execute the handle do { $status = curl_multi_exec($mh, $active); if ($active) { curl_multi_select($mh); } } while ($active && $status == CURLM_OK); //close the handles curl_multi_remove_handle($mh, $curl); curl_multi_close($mh); // all of our requests are done, we can now access the results echo curl_multi_getcontent($curl); Trường hợp bạn thực hiện trên local thì nên set 2 option là CURLOPT_SSL_VERIFYHOST và CURLOPT_SSL_VERIFYPEER về false để tránh xác thực certificate.CURLOPT_SSL_VERIFYHOST và CURLOPT_SSL_VERIFYPEER về false để tránh xác thực certificate. Xử lý file nhận từ clientFile: upload.php Ở đây mình chỉ hiển thị dữ liệu gửi lên từ client, còn các bạn có thể tùy ý xử lý dữ liệu.
|