|
|
|
|
|
для: Trianon
(11.01.2007 в 17:24)
| | Спасибо большое, Trianon! Все вчера успешно решилось с Вашей помощью!
Причина была в том, что $params я передавала строкой, а не массивом и указывала не полный путь к файлу! | |
|
|
|
|
|
|
|
для: Dasha
(11.01.2007 в 16:37)
| | обратите внимание на полный путь к передаваемому файлу.
<?php
$url = "localhost/test.php";
$params = array(
"var1"=>'2',
'file' => '@/home/localhost/www/test/test.txt'
);
$ch = curl_init();
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $params);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
if (curl_errno($ch))
print curl_error($ch);
$xml = curl_exec($ch);
if (curl_errno($ch))
print curl_error($ch);
curl_close($ch);
print_r($xml);
// upload filename1
?>
|
Этот вариант у меня заработал. | |
|
|
|
|
|
|
|
для: Dasha
(11.01.2007 в 17:09)
| | Ну если не заработает, попробуйте "схитрить" - читать файл с помощью file_get_contents и передавать уже эти данные.
Хотя я не уверен, что будет работать на 100% :)) | |
|
|
|
|
|
|
|
для: ddhvvn
(11.01.2007 в 16:41)
| | Тестировала еще на двух серверах, там тоже не работает, думаю , что проблема не в них!
Читала несколько сообщений на форумах о том, что пример из мануала не работает. Причина в чем-то другом | |
|
|
|
|
|
|
|
для: Dasha
(11.01.2007 в 16:37)
| | Значит проблема с Вашим сервером (Apache или PHP) | |
|
|
|
|
|
|
|
для: Trianon
(11.01.2007 в 16:34)
| | Не работает! Эти два примера я посмотрела в первую очередь | |
|
|
|
|
|
|
|
для: dasha
(11.01.2007 в 16:14)
| | параметры при загрузке файла на сервер должны передаваться не в виде urlencoded, а как multipart/form-data.
В мануале http://ru.php.net/curl_setopt
(точнее в комментариях к нему) есть два примера.
27-Aug-2002 01:31
22-Sep-2001 08:52 | |
|
|
|
|
|
|
|
для: ddhvvn
(11.01.2007 в 16:30)
| | нет не выводится. Т.е. когда я передаю обычные параметры, всё чисто отрабатывает, передается то, что нужно. А когда пытаюсь передать файл (указывая его @), то файл не передается, никаких ошибок не возвращается | |
|
|
|
|
|
|
|
для: dasha
(11.01.2007 в 16:14)
| | А никакой ошибки не выводится? | |
|
|
|
|
|
|
| Добрый день!
Никак не получается переслать файл и данные постом с помощью CURL
Скрипт следующего содержания:
$url = "localhost/test.php";
$params = "var1=2&file=@test.txt";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $params);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
if (curl_errno($ch)) {
print curl_error($ch);
}
$xml = curl_exec($ch);
curl_close($ch);
Файл test.txt находится в текущей директории.
Читала в документации, там написан именно такой способ передачи, но файл точно не передается.
Была на многих форумах, но ответа не нашла.
Помогите, пожалуйста | |
|
|
|
|