Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Problem z file_get_contents
ShamY
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 11.07.2013

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


Witam ponownie.
Tym razem mam kłopot z przeniesieniem obrazka ze strony jednej na drugą, dodam, że obie to moje strony, a nie chcę zmieniać każdej strony by dodać inną ścieżke do plku... Strona bazowa i kod obrazka:
  1. <div class=ts>
  2. <img src="adres" width="660" height="616">
  3. </center>
  4. </div>


oraz kod do wstawienia na strony docelowe, coś w nim jest nie tak, bo nic nie wyświetla, ale nie wiem co...
  1. <?php
  2. $strona = file_get_contents('adres');
  3.  
  4. echo '<pre>';
  5. preg_match('/<div class\=\"ts\"\>(.*?)<\/div>/s', $strona, $wynik);
  6. var_dump($wynik);
  7. echo $wynik[0];
  8. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Wazniak96
post
Post #2





Grupa: Zarejestrowani
Postów: 550
Pomógł: 75
Dołączył: 5.06.2012
Skąd: Lębork

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


Poczytaj o php simple dom. (IMG:style_emoticons/default/smile.gif)

EDIT:
Ahmm... Zapomniałem. Sprawdź co zawiera zmienna $strona. Jeśli po wyświetleniu nie ukaże Ci się tamta strona to znaczy ze twój serwer ma w php.ini zablokowane dostęp do pobrania treści z zewnętrznych stron.

Ten post edytował Wazniak96 20.04.2014, 10:35:52
Go to the top of the page
+Quote Post
ShamY
post
Post #3





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 11.07.2013

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


Ok, dzięki. Tak wszystko działa, bo sprawdzałem. Mam coś takiego:
  1. <?php
  2. include 'simple_html_dom.php';
  3.  
  4. $html = file_get_html('adres');
  5. foreach($html->find('img') as $element)
  6. {
  7. echo $element->src . '<br>';
  8. }
  9. ?>


wszystko działa, ale pokazuje mi link ido wszystkich obrazków z tej strony, jest ich 6, jak zrobić by wyświetlał się 4 jako <img src="....">? <img src="$element->src . ">?

Ten post edytował ShamY 20.04.2014, 11:37:12
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Zamiast foreach zrób for
Go to the top of the page
+Quote Post
ShamY
post
Post #5





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 11.07.2013

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


Po tej zmienie wyskakuje mi błąd w linii 5
Go to the top of the page
+Quote Post
Turson
post
Post #6





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Pokaż kod, bo nawet już przypuszczam jaki masz błąd.
Go to the top of the page
+Quote Post
ShamY
post
Post #7





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 11.07.2013

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


Zmieniłem żeby pobierało tylko diva class ts:
  1. <?php
  2. include 'simple_html_dom.php';
  3.  
  4. $html = file_get_html('adres');
  5. foreach($html->find('div[class="ts"]') as $element)
  6. {
  7. echo $element->innertext . '>';
  8. }
  9. ?>



Dodatkowo chciałbym aby w echo było coś takiego:
  1. echo '<img src='$element->innertext . 'width="100" height="150">';


ale nie dokonca wiem, jak mam to z php zestawić.

Ten post edytował ShamY 20.04.2014, 12:12:12
Go to the top of the page
+Quote Post
Turson
post
Post #8





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


  1. echo '<img src="'.$element->innertext.'" width="100" height="150">';
Go to the top of the page
+Quote Post
ShamY
post
Post #9





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 11.07.2013

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


Ok działa! Dzięki, leci dla obu Panów pomógł!
Go to the top of the page
+Quote Post

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: 25.08.2025 - 01:34