![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 28.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie. Mam formularz zapisujący dane, które się do niego wprowadzi w pliku txt. Mam również zamiar stworzyć stronę dla adminów, która pozwoli im na dopisanie czegoś do istniejącego już wpisu - np. do linijki, gdzie pierwsze słowo to "Mietek". Czy jest taka opcja? Jak tak to jak to zrobić?
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 2 Dołączył: 8.11.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Otworzyć plik i wczytać dane np. file_get_contents()" title="Zobacz w manualu PHP" target="_manual
2. Odnaleźć słowo "Mietek". np. strpos()" title="Zobacz w manualu PHP" target="_manual 3. Wykonać operację dopisania, np poprzez str_replace()" title="Zobacz w manualu PHP" target="_manual 4. Ponownie zapisać dane, np. file_put_contents()" title="Zobacz w manualu PHP" target="_manual Ten post edytował kresh 1.05.2007, 23:30:10 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 28.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Hmmm próbowałem coś stworzyć, ale funkcja która miała coś znaleźć wciąż wywalała zmienną 0 mimo że treść w pliku istnieje... Może mi ktoś dać dokładniejszy opis? No i lepiej bez funkci file_get_contents i file_put_contents bo one nie są dostępne we wszystkich wersjach php...
Skrypt ma wyłowić z pliku txt który wygląda o tak: Cytat Karol|18|Chotomów|2h|ONW|PvE|Rok|Jestem&se&taki&jeden|Drusilia|N/Mo|on||on|Niczego|Nic|Joasia&Beata&Mietek ddddddddddd|dd|ddddddddd|d|d|obojetne|d|d|d|d||Factions||d|d|d ddddddddddd|dd|ddddddddd|d|d|obojetne|d|d|d|d||Factions||d|d|d znaleźć linijkę ze słowami (w tym wypadku Karol i Chotomów), a następnie na koniec tej linijki (przed przejściem do następnej linii oczywiście) dopisać |1|0 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 853 Pomógł: 25 Dołączył: 27.08.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
tylko, że w twoim rozwiązaniu Ociu mocno pożeramy zasoby zapisując do tablicy, przy naprawdę dużych plikach może to rodzić problemy. wydaje mi się, że lepiej stworzyć plik tymczasowy np. tempnam" title="Zobacz w manualu PHP" target="_manual, tam zapisać nowe dane (odczytać linia po lini z oryginalnego i w odpowiednim miejscu wstawić nową linie) i potem usunąć plik oryginalny i zastąpić nazwę pliku tymczasowego na nazwę pliku oryginalnego.
Ten post edytował sopel 3.05.2007, 09:10:15 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 28.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
to by faktycznie rozwiązało problem, który opisałem, ale jest jeszcze jedno co muszę zrobić - ta końcówka |1|0 - chodzi o to że są to głosy w głosowaniu TAK|NIE. Przydałoby się, aby można było odczytać z tego pliku ilość głósów, a potem po oddaniu głosu przez użytkownika poprawić wpis na np. |2|0 czy też |1|1 i.t.d.
Wiem że sprawe możnaby prosto rozwiązać tworząc baze MySQLa ale nie znam żadnych daromwych providerów. Dlatego wrzucam to do txt... Może jakiś skrypt, który pobierze dane z tej linijki, usunie ją, a potem spowrotem ją wpisze, ale z poprawioną końcówką? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 03:49 |