Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Pobieranie danych z innej strony
Izagra
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 23.05.2012

Ostrzeżenie: (0%)
-----


Witam

Przeszukałam trochę forum i znalazłam kilka odpowiedzi z interesującym mnie zagadnieniem, aczkolwiek nie wiem czy będę sobie sama umiała z tym poradzić.
Robię poradnik dla pewnej gry online i potrzebuję do niego danych, np nazwy rang czy tam umiejętności....chodzi o to że w źródle strony pokazuje mi jedynie wartość wykonaną z bazy/pliku(?) i nie mogę się nigdzie doszukać tych informacji gdzie są zawarte i skąd się pobiera (przeszukałam wszystkie js), więc zapewne z bazy danych. Teraz pytanie jak się za to zabrać. Nie liczę na gotowe rozwiązanie, bo chciałabym się przy okazji i nauczyć nowych rzeczy, ale prosiłabym o takie nieco łopatologiczne wytłumaczenie lub naprowadzanie choćby na materiały (jak to umieścić, wykonać działanie).

Z góry dziękuję za poświęcenie mi jakże cennego czasu ;-)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
d3ut3r
post
Post #2





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

Ostrzeżenie: (0%)
-----


co do 2 problemu to ten kod działa, sama funkcja DOMinnerHTML wzięta ze StackOverlow:

  1. function DOMinnerHTML($element)
  2. {
  3. $innerHTML = "";
  4. $children = $element->childNodes;
  5. foreach ($children as $child)
  6. {
  7. $tmp_dom = new DOMDocument();
  8. $tmp_dom->appendChild($tmp_dom->importNode($child, true));
  9. $innerHTML.=trim($tmp_dom->saveHTML());
  10. }
  11. return $innerHTML;
  12. }
  13.  
  14.  
  15. $text='<div class="bar"><div><div class="percent" style="width: 30%;"></div></div></div>
  16. <div class="rank">Ranking: Stara wyga</div>';
  17.  
  18. $dom = new DOMDocument;
  19. $dom->loadHTML($text);
  20.  
  21. $el=$dom->getElementsByTagName("div");
  22.  
  23. if ($el->length>0){
  24.  
  25. foreach ($el as $div){
  26.  
  27. $classes=explode(' ',$div->attributes->getNamedItem('class')->nodeValue);
  28. if (in_array('rank',$classes)){
  29. echo str_replace('Ranking:','',DOMinnerHTML($div));
  30. }
  31.  
  32. }
  33.  
  34. }


co do obrazka to w sumie na tej samej zasadzie co kod powyżej:

  1. $text='<span class="clan-name"><i class="resident" title="Mieszkaniec"></i><img src="/@images/clan/clan_18_ico.png" class="clan-icon" title="BROWAR"><a href="/clan/18/">BROWAR</a><span class="level"> [2]</span></span>';
  2.  
  3. $dom = new DOMDocument;
  4. $dom->loadHTML($text);
  5.  
  6. $el=$dom->getElementsByTagName("img");
  7.  
  8. if ($el->length>0){
  9.  
  10. foreach ($el as $img){
  11.  
  12. $src=$img->attributes->getNamedItem('src')->nodeValue;
  13.  
  14. //lub
  15. //$src='http://host.pl/'.$img->attributes->getNamedItem('src')->nodeValue;
  16.  
  17. echo $src;
  18.  
  19. }
  20.  
  21. }

Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 04:11