Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana pojedynczych zapisów w tablicy
Viroch
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 12.11.2003

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


Mam następujący problem.

Wczytuje dane z pliku i zmieniam nazwe:

[php:1:92a38db158]<?php
$plik = file('data/menu.dat');
$linia = explode("##", $plik[$numer]);
echo("
<form name=strony METHOD=POST ACTION='admin.php?co=edmenu&jak=zmstrwl&numer=".$numer."'>
Nazwa pliku: <b>".$linia[0]." </b><br/>
Nazwa strony: <br/><input type='text' name=nazwa value=".$linia[1]." /><br/><br/>
<input type=submit value='Zmien' />
</form>");
?>[/php:1:92a38db158]

i teraz mam problem jak po zmianie wstawić, $nazwa w $linia[1] do pliku w odpowiednie miejsce, nie przebudowując całego pliku. Plik menu.dat wygląda mniej więcej tak:
Kod
1##Pierwsza strona

2##Druga podstrona

3##Trzecia strona

itd..


Bardzo prosze o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Pewni chciałbyś przeskoczyć do jednego wiersza i go nadpisać, niestety nie da się tak zrobić. Istnieje w php funkcje fseek() ale ona skacze po bajtach a nie po liniach.
Wydaje mi się że jedynym wyjściem jest :
:arrow: Wczytanie całego pliku do tablicy file;
:arrow: Zmodyfikowanie jednego rekordu w tejże tablicy;
:arrow: Złożenie wszystkiego do kupy implode;
:arrow: Nadpisanie całego pliku;

P.S.
Jak będziesz skaładał plik do kupy pamiętaj o znakach końca wiersza, żeby ci się wszystko nie zapisało w jednej linni.
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 Aktualny czas: 19.08.2025 - 13:13