Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Problem z edycją pliku
Gibcio
post 20.06.2007, 10:35:43
Post #1





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 20.04.2005

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


Witam exclamation.gif!!

Mam pewien problem z edycję pliku - mam nadzieję że tutaj się go rozwiąże oto opis problemu:

Jest sobie plik z zawartością:
0||xxxxx||xxxxx||
0||bb||aaa||

oczywiście biorąc pod uwagę że wierszy może być więcej odczytuję zawartość pliku do zmiennej $plik

  1. <?php
  2. $plik = file("aaaa.xxx");
  3. for($i1=0; $i1<count($plik); $i1++)
  4. {
  5. $dane = explode("||", chop($plik[$i1]));
  6. echo "<td width='30%' class='panel' align='center'><input type='text' class='text' name='opcja_left' value='$plik[$i]'></td>";
  7. echo "<td width='30%' class='panel' align='center'><input type='text' class='text' name='nazwa_left' value='$plik[$i]'</td>";
  8. echo "<td width='30%' class='panel' align='center'><input type='text' class='text' name='url_left' value='$plik[$i]'</td>";
  9. }
  10. ?>

i kiedy zmienię wartość w obojętnie którym polu to zawartość pliku zostaje wykasowana a chciałbym żeby układ pliku został tak jak przed odczytaniem go lecz zmianie uległy poszczególne wartości.
Do nadpisywania pliku używam:

  1. <?php
  2. $plik = fopen("aaa.xxx", "w");
  3. fputs($plik, "".$_POST['opcja_left']."||$_POST['nazwa_left']."||".$_POST['url_left']."||n");
  4. fclose($plik);
  5. ?>
Go to the top of the page
+Quote Post
domis86
post 20.06.2007, 11:39:09
Post #2





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


Hmmm. Moze inaczej to zrobic?
Plik ma Ci sluszyc do przechowywania danych?
Jesli tak to trzymaj je w tabeli, serializuj i zapisuj do pliku.
Pozniej wczytujesz caly plik, odserializowaujesz i masz spowrotem dane.
Zmieniasz cos w danych i mozesz znowu zapisac tak samo.
proste. aarambo.gif
Go to the top of the page
+Quote Post
cinekz
post 20.06.2007, 12:14:58
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 6
Dołączył: 15.06.2006

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


Odpalasz funkcję fopen z nieodpowiednim parametrem. Zamiast 'w' powinno być 'a'.
PS Poczytaj http://pl.php.net/manual/pl/function.fopen.php

Pozdrawiam Marcin.

Ten post edytował cinekz 20.06.2007, 12:16:37
Go to the top of the page
+Quote Post
domis86
post 20.06.2007, 12:19:28
Post #4





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


to zmieni tylko tyle ze wskaznik bedzie ustawiony na koncu pliku. I tak nie bedzie mogl zmieniac wczesniejszych danych w prosty sposob.
Nie kombinujcie tylko serializujcie aarambo.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: 19.07.2025 - 07:46