Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Podwójne otworzenie pliku i problem
warszyk
post 27.07.2010, 14:50:36
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 26.07.2010

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


Witam,
mam skrypt, który szuka na stronie adresy a następnie otwiera je i odczytuje ich zawartość (proszę się nie martwić nie jest to żadne bot czy spam, tylko przeszukiwanie stron sklepów internetowych w celu nawiązania współpracy). I wszystko się dobrze wykonuje tylko jest problem z ponownym otworzeniem danego pliku, przedstawię to na kodzie
  1. <?php
  2.  
  3. $otworz1 ="http://shop-list.com.ua/%D0%9A%D0%BE%D0%BC%D0%BF%D
  4. 1%8C%D1%8E%D1%82%D0%B5%D1%80%D1%8B,%20%D0%BD%
  5. D0%BE%D1%83%D1%82%D0%B1%D1%83%D0%BA%D0%B8,%2
  6. 0%D0%BD%D0%B5%D1%82%D0%B1%D1%83%D0%BA%
  7. D0%B8,%20%D0%9A%D0%9F%D0%9A/s5p0.html";
  8.  
  9. $uchwyt = fopen("$otworz1", "rb");
  10. $tresc = '';
  11. $tresc2 = '';
  12. while (!feof($uchwyt))
  13. {
  14. $tresc .= fread($uchwyt,20);
  15. }
  16. if(preg_match_all( '#http://([-/a-zA-Z0-9.?&]+)#' , $tresc, $tresc1))
  17. {
  18. //echo (" ok ");
  19. }
  20. else
  21. echo ("nie");
  22.  
  23. fclose($uchwyt);
  24. foreach ( $tresc1[0] as $zm )
  25. { $j = $j + 1;
  26. echo (" $zm "."<br/>"); // do tego momentu jest wszystko OK dostaję adresy
  27. $stronka = trim($zm);
  28.  
  29. $uchwyt1 = fopen($stronka, "rb"); //tutaj też jest niby ok, gdyż jak sprawdze w if()
  30. //czy $uchwyt 1 zwraca true to tak jest
  31.  
  32. while (!feof($uchwyt2)) //ale tutaj dopiero coś się dzieję, gdyż ta pętla przerywa
  33. //działanie pętli foreach, tak jakby die i się nie wykonuje nawet
  34. {
  35. $tresc2 .= fread($uchwyt1,10);
  36. }
  37. echo("$tresc2");
  38. fclose($uchwyt1);
  39. }
  40. }
  41.  
  42. ?>


Ten post edytował warszyk 27.07.2010, 14:53:51
Go to the top of the page
+Quote Post
Fifi209
post 27.07.2010, 14:54:23
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


W drugim while masz:
  1. $uchwyt2

zamiast

  1. $uchwyt1


Ten post edytował fifi209 27.07.2010, 14:54:42


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
warszyk
post 27.07.2010, 14:58:11
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 26.07.2010

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


zmieniłem, ale już w pierwszym kroku po pierwszym adresie mi przerywa:/
Go to the top of the page
+Quote Post
Fifi209
post 27.07.2010, 15:12:05
Post #4





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Pokaż jak to zmodyfikowałeś bo wierzyć się nie chce...


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
warszyk
post 27.07.2010, 19:25:00
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 26.07.2010

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


Narazie wszystko dobrze dzięki, głupie błędy robiłem, większość wynikała z tego, że coś przeoczyłem bo rano nie miałem okularów tongue.gif
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:16