![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam, jedyne co mi działa z zarządzania plikami po stronie serwera to:
Kod <?php // zastosowanie instrukcji fopen $uchwyt = fopen("plik.txt", "w"); ?> powyższy skrypt tworzy plik. oraz to: Kod <?php // usunięcie pliku unlink("style.css"); ?> jednak inne tego typu nie działają, np. Kod ale np. gdy chcę wyświetlić zawartość pliku to: [code] <?php // utworzenie uchwytu do pliku $plik = fopen('plik.txt','r'); echo $zawartosc; ?> nie wystarcza, muszę napisać takie coś: Kod <?php // utworzenie uchwytu do pliku $plik = fopen('index.html','r'); // przypisanie zawartości do zmiennej $zawartosc = fread($plik, 8192); echo $zawartosc; ?> lub ewentualnie: Kod echo $fopen = file_get_contents("plik.txt"); mimo że podobno mogę korzystać z takich trybów: http://kursphp.com/tryby_otwierania_pliku.php nie wiem czemu mi to nie działa, nawet jak skopiowałem gotowca z podsumowania kursu: Kod <?php function zdobadz_email($strona) { // formuła prawidłowego adresu e-mail $sprawdz = '/^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9\-.]+\.[a-zA-Z] {2,4}$/'; $plik = fopen($strona,'r'); // otwarcie pliku strony // utworzenie naszego pliku $moj_plik = fopen('tymczasowy_index.txt','a'); flock($moj_plik, 2); // blokada pliku // przeszukujemy plik dopóki nie znajdziemy sie na końcu while(!feof($plik)) { $linia = fgets($plik); // pobieramy jedną linię // sprawdzamy, czy znajduje się tam adres e-mail // jeśli tak, zapisujemy do naszego pliku if (ereg($sprawdz, $linia, $wynik)) fputs($moj_plik, $wynik); } fclose($plik); // zamykamy plik strony // po zapisaniu danych, wskaźnik znajduje się na końcu pliku // musimy go przewinąć znów na początek funkcją rewind() rewind($moj_plik); // zawartość zapisanego pliku wczytujemy do tablicy adresów // $adresy, z wykorzystaniem funkcji file $adresy = file($moj_plik); // procedura wysyłania maila $adres = "przyklad@uzycia.pl"; $tytul = "Adresy e-mail"; $wiadomosc = "Znalezione adresy e-mail to: $adresy"; mail($adres, $tytul, $wiadomosc); // odblokowanie pliku flock($moj_plik, 3); // zamknięcie fclose($moj_plik); // usunięcie, po wysłaniu e-mailem unlink($moj_plik); } ?> to on nie działa. Co robię źle? pomocy. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 1 Dołączył: 18.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam
![]() Serwer postawiony na lokalnym serwie u siebie czy na płatnym ? |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Skąd wytrzasnąłeś zmienną $zawartosc o_O. Ten post edytował melkorm 18.09.2012, 18:37:24 -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Skąd wytrzasnąłeś zmienną $zawartosc o_O. w przykładzie zrobiłem błąd, jednak nawet jak zrobię : Kod $plik = fopen('plik.txt','r'); echo $plik; to pisze mi zamiast tekstu z pliku, wyskakuje mi takie coś: Resource id #3 PS: uczę się na localhoscie. symulator serwera to webserv 2.0 - wybrałem tryb profesjonalny (php i mysql 5 coś) Ten post edytował Th0e 18.09.2012, 18:55:10 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Jak klikniesz w link do funkcji fopen to zauważysz że to zwraca Zasób (Resource) czyli uchwyt do pliku dzięki któremu możesz dalej operować na pliku. Podobnie jest z wieloma innymi funkcjami jak np mysql_connect itp. Dlatego musisz użyć fread / file_get_contents itp by odczytać zawartość pliku.
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 872 Pomógł: 94 Dołączył: 31.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
zawartosc pliku do zmiennej mozna pobrac za pomoca funkcji file_get_contents(). Wszystko dziala jak powinno
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 16.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
dziękuję za pomoc. nagrodziłem lajkami. temat do zamknięcia
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.07.2025 - 06:59 |