Chcę ogłosić tablicę plików na serwerze przy użyciu PHP i curl. W HTML wygląda to następująco:
<form method="POST" type="multipart/form-data">
<input type="text" name="fieldx" value="123"/>
<input type="file" name="localfile[]"/>
<input type="file" name="localfile[]"/>
</form>
To samo należy zrobić z CURL:
$postParameters['fieldx'] = "123";
$postParameters['localfile'] = array("fulllocalfilepath1", "fulllocalfilepath2");
$request = curl_init('http://server.abc');
curl_setopt($request, CURLOPT_POST, true);
curl_setopt(
$request,
CURLOPT_POSTFIELDS,
$postParameters
);
curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
$rawData = curl_exec($request);
curl_close($request);
Ale serwer nie otrzymuje tablicy localfile
podczas korzystania z CURL. Jaka jest poprawna komenda do wysyłania plików?
Pozdrowienia,
1
Hyndrix
9 listopad 2018, 14:47
1 odpowiedź
Najlepsza odpowiedź
Dostałem rozwiązanie:
$postParameters['fieldx'] = "123";
$postParameters['localfile[0]'] = new cURLFile("fulllocalfilepath1", "mime", "readable name 1");
$postParameters['localfile[1]'] = new cURLFile("fulllocalfilepath2", "mime", "readable name 2");
$request = curl_init('http://server.abc');
curl_setopt($request, CURLOPT_POST, true);
curl_setopt(
$request,
CURLOPT_POSTFIELDS,
$postParameters
);
curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
$rawData = curl_exec($request);
curl_close($request);
0
Hyndrix
9 listopad 2018, 14:59
Podobne pytania
Nowe pytania
php
PHP to szeroko stosowany, wysokopoziomowy, dynamiczny, zorientowany obiektowo i interpretowany język skryptowy przeznaczony głównie do tworzenia stron WWW po stronie serwera. Używane w przypadku pytań dotyczących języka PHP.