как скачать xml файл
1.
Win4esteR (26.01.2018 / 17:59)
подскажите пожалуйста! файл находится на сайте сайт.ру/тест.xml каким образом я могу скачать его себе на хостинг с помощью php? уже весь инет облазил, туплю сильно
2.
Володя (26.01.2018 / 18:20)
<?php
$file = "НАЗВАНИЕ ФАЙЛА";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, "http://АДРЕС САЙТА".$file);
$result = curl_exec($ch);
curl_close($ch);
if ($result)
{
header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . $file);
header('Content-Length: ' . strlen($result));
echo $result;
exit();
}
?>
3.
Win4esteR (26.01.2018 / 19:47)
Caswap, что-то не работает.. вот какой код
<?php
$file = "test.xml";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_URL, "https://test.test.ru/test/".$file);
$result = curl_exec($ch);
curl_close($ch);
if ($result)
{
header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . $file);
header('Content-Length: ' . strlen($result));
echo $result;
exit();
}
?>
4.
Dmitry Kokorin (27.01.2018 / 14:17)
Win4esteR, точнее адрес напиши, пробовать надо
5.
/7o/loTeH4I1k (28.01.2018 / 01:03)
<?php
$file=file_get_contents('хттп://сайт.ру/тест.xml');
//далее работа с файлом
// ...
// и запись в файл
file_put_contents('file.xml', $file);
Если никакой обработки не предполагается то можно просто
<?php
copy('хттп://сайт.ру/тест.xml', 'file.xml');
6.
Win4esteR (28.01.2018 / 20:16)
anonymouse, не работает... в обоих случаях выдает ошибку:
Warning: file_get_contents() [function.file-get-contents]: SSL operation failed with code 1. OpenSSL Error messages: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure in D:\OpenServer\domains\testrab1.ru\pars1.php on line 2
Warning: file_get_contents() [function.file-get-contents]: Failed to enable crypto in D:\OpenServer\domains\testrab1.ru\pars1.php on line 2
7.
JustZero (28.01.2018 / 20:19)
Win4esteR,
<?php
$stream_opts = [
"ssl" => [
"verify_peer" => false,
"verify_peer_name" => false,
]
];
$response = file_get_contents("https://www.example.com", false, stream_context_create($stream_opts));
file_put_contents('file.xml', $response);
8.
Win4esteR (29.01.2018 / 01:21)
Короче. Код выше на опен сервере такую же ошибку выдает. Но я проверил его на хосте, все без ошибок.. На опен сервере стоит Пых 5.4 , выше пока поставить не могу, ошибку выдает . Может дело в версии пыха, хз. Всем спасибо!
9.
Zдешний (29.01.2018 / 04:14)
Win4esteR, что за Пых? Ты не пыхти
10.
Александр (29.01.2018 / 17:14)
А если не указывать
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
?
11.
JustZero (29.01.2018 / 17:56)
Randy, наоборот указывать нужно что проверять ssl сертификат не нужно! он просто не разобрался с curl'ом
12.
Александр (30.01.2018 / 11:35)
Randy, наоборот указывать нужно что проверять ssl сертификат не нужно! он просто не разобрался с curl'ом
Ну не знаю. У меня с PAYPAL были проблемы, пока вообще не исключил эти строки.
13.
/7o/loTeH4I1k (04.02.2018 / 01:44)
Win4esteR, у тебя может просто время сбито, не? Хотя ты бы вообще на сайты с https не зашёл...
URL:
https://visavi.net/topics/43878