POST 양식에서 PHP Curl 파일 업로드
POST 양식으로 파일을 업로드하는 것은 어려울 수 있으며, 특히 서버 측에서 cURL을 사용할 경우 더욱 그렇습니다. 이 문제를 해결하려면 다음 접근 방식을 고려하세요.
서버측 cURL 구현
파일 업로드를 처리하고 cURL을 통해 보내려면 PHP의 $_FILES 슈퍼글로벌을 활용할 수 있습니다. 업로드된 파일에 대한 정보를 제공합니다. 다음은 프로세스를 보여주는 코드 조각입니다.
if (isset($_POST['upload'])) { $fileKey = 'image'; // Assuming your file input has 'image' as its name // Retrieve file information $tmpFile = $_FILES[$fileKey]['tmp_name']; $fileName = $_FILES[$fileKey]['name']; // Prepare cURL parameters $postFields = ['file' => '@' . $tmpFile, /* Other post parameters if needed */]; $url = 'https://example.com/curl_receiver.php'; // URL to send the file to // Initialize and configure cURL $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Execute cURL request $result = curl_exec($ch); // Handle cURL response if (curl_errno($ch)) { // Handle error } else { // Success, do further processing with $result } // Close cURL connection curl_close($ch); }
수신 스크립트(curl_receiver.php)
<?php // Handle incoming POST data if (!empty($_FILES)) { // Retrieve file information $tmpFile = $_FILES['file']['tmp_name']; $fileName = $_FILES['file']['name']; // Process and save the uploaded file // ... // Send response to the client echo json_encode(['status' => 'success']); } else { // Handle error, no file uploaded echo json_encode(['status' => 'error', 'message' => 'No file uploaded']); } ?>
위 내용은 양식 POST에서 PHP cURL을 사용하여 파일을 업로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!