Статус:
Offline
Реєстрація: 21.11.2010
Повідом.: 38
Реєстрація: 21.11.2010
Повідом.: 38
$PagesOfSiteFusbal=array(
"https://www.???.com/League/Football/NFL/1/Lines.aspx",
"https://www.???.com/League/Football/CAA/127/Lines.aspx",
"https://www.???.com/League/Football/Canadian/127/Lines.aspx");
$PagesOfSiteHockey=array(
"https://www.???.com/ContestCategory/NHL+Futures/Lines.aspx",
"https://www.???.com/League/Hockey/Austria+NL+3/15/Lines.aspx",
"https://www.???.com/League/Hockey/Den+ABankL+3/15/Lines.aspx");
*********
//Это работает
for($ii=0;$ii<3;$ii++)
{
$html = file_get_contents( $PagesOfSiteHockey[$ii]);
//Обработка и вывод
}
//Здесь не работает
for($ii=0;$ii<3;$ii++)
{
$html = file_get_contents( $PagesOfSiteHockey[$ii]);
preg_match_all( "#<tr class=\"linesAlt(.+?)</tr>#is", $html, $matches );
//Обработка и вывод
}
у вас там в обоих случаях в цикле идет обращение к $PagesOfSiteHockey - и в первый раз и во второй. это опечатка. но возможно сервак считает, что его ДДоСят, когда вы обращаетесьт к одним и тем же URL повторно через несколько миллисекунд))
Это действительно опечатка, извините. Вот насчет ДДос защиты - вполне возможно.
Так что же делать?
А чо Судьба с большой буквы? Я начинаю паниковать.
get_headers:failed to open stream: HTTP request failed!
Есть аналогичные функции? Или скажите куда копать хотя бы.
сдается мне, что все дело в символах "+" во второй пачке адресов, но не уверен.
$pagesHockey=array(
'https://www.pinnaclesports.com/ContestCategory/NHL+Futures/Lines.aspx',
'https://www.pinnaclesports.com/League/Hockey/Austria+NL+3/15/Lines.aspx',
'https://www.pinnaclesports.com/League/Hockey/Den+ABankL+3/15/Lines.aspx',
);
foreach ($pagesHockey as $url) {
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE);
$html = curl_exec($curl);
if (FALSE === $html) {
throw new Exception(curl_error($curl));
}
// Have fun
}
пробовал urlencode/decode - бестолку, даже вручную слешами и знаками плюсы менял - все равно nullоднозначно плюсов не должно быть
Kompot: так мне ж разные надо
//Это работает
for($ii=0;$ii<3;$ii++)
{
$html = file_get_contents( $PagesOfSiteHockey[$ii]);
//Обработка и вывод
}
//Здесь не работает
for($ii=0;$ii<3;$ii++)
{
$html = file_get_contents( $PagesOfSiteHockey[$ii]);
preg_match_all( "#<tr class=\"linesAlt(.+?)</tr>#is", $html, $matches );
//Обработка и вывод
}
Дебажь, не должно подменять локалхостом. Проверил код маусфлая у себя — всё работает.
в обоих случаях $PagesOfSiteHockey
Знаю, знаю...но видели бы вы мой код, после всех этих проб и ошибок...