"Call to a member function find()" w parsowaniu strony PHP

0

Przy poniższym kodzie wyskakuję mi błąd w linijce gdzie zaczyna się pętla foreach o następującej treści: "Call to a member function find() on a non-object" ma ktoś jakiś pomysł? Z góry wielkie dzięki

  <?php
  	include('simple_html_dom.php');
	if ($strona == "lilki")
	{
 	$html = file_get_html('lilki.pl');
	}
	else
	{
	$html =  file_get_html('yahoo.com');
	}
	foreach($html->find('a') as $r) 
    echo $r->href . '<br>';
  ?>
0

http://cośtam.tld
Poza tym, Jezusie nazaretański, formatowanie kodu.

0

zrobiłem pełny adres strony, cały czas błąd....

0

Pewnie dlatego, że strona lilki.pl nie istnieje :P

0

to był tylko przykład, mam istniejącą stronę i dobry adres? a musze do finda jakąś metode dołączać?

0

No to wrzuć rzeczywisty kod, bez jakiejkolwiek przeróbki, a nie bawisz się z nami w kotka i myszkę :v
Poza tym Ty nas pytasz, czy masz istniejącą stronę i dobry adres? :|

0
$strona = ($_POST['strona']);
  		include('simple_html_dom.php');
	if ($strona == "wppl")
	{
 	$html = file_get_html('http://www.wp.pl/');
	}
	elseif ($strona == "onetpl")
	{
	$html =  file_get_html('http://www.onet.pl/');
	}
	foreach($html->find('sport') as $r) 
    echo $r->href . '<br>';
			
	}

Nie wiem co jest z tym findem
nie mogę dojść do ładu.

0

No widzisz, i tutaj masz problem.
Nie kwestia find - rzecz w tym, że nie przekazujesz poprawnie parametru strona, więc nie tworzysz zmiennej $html! (kod nie trafia w żaden z ifów)

0

to dlaczego w takim razie to kompiluje sie poprawnie?

	$strona = ($_POST['strona']);
  		include('simple_html_dom.php');
	if ($strona == "wppl")
	{
 	$html = file_get_html('http://www.wp.pl/');
	}
	elseif ($strona == "onetpl")
	{
	$html =  file_get_html('http://www.onet.pl/');
	}
	
	echo $html;
			
	}

0

Ale że niby co się kompiluje? :|
Poza tym PHP pozwala na tworzenie zmiennych w dowolnym miejscu, więc Twój kod jest okej pod względem semantycznym, ale logicznie jest źle, a tego nie łapią kompilatory oraz interpretery.

No bo na logikę - przypuśćmy, że $strona zawiera ciąg "asdf" - jaka jest wartość zmiennej $html przy echo?

1 użytkowników online, w tym zalogowanych: 0, gości: 1