Autor Zpráva
MilanJ
Profil
Mám skript, který mi ukládá text do souboru, žádná databáze, jen čistý TXT soubor:

$fp = FOpen("./mujsoubor.txt", "a");
FPutS($fp, '<BR><SPAN class="datum">'.Date("d.m.Y - H:i").'</SPAN><BR>');
...
...
atd.

Obsah souboru je sice v pořádku, vše funguje jak má, problém je ale ten, že se mi jednotlivé příspěvky (rozuměj obsah souboru) zobrazují vzestupně, nahoře na stránce ty nejstarší, a dole ty nejnovější, já bych to potřeboval přesně naopak...nahoře ty nejnovější a dole ty nejstarší.

Když použiju při otevírání souboru $fp = FOpen("./mujsoubor.txt", "a"); jiný parametr, např. r nebo r+, obsah souboru se na začátku přemazává.

Jak to ošetřit, vyřešit?

Díky za pomoc.
Hugo
Profil
Použij atribut a+, ten ti nastaví pointer na konec souboru.
MilanJ
Profil
Výsledej je stejný, v souboru TXT jsou uloženy údaje chronologicky naopak, tudíž se i načítají naopak, než bych potřeboval.

Chci, aby se data v TXT souboru zapisovala na začátek, aniž by se přepsal obsah.
Parametr "r" ani "r+" nepomáhá, vždycky se mi přepíše začátek souboru. :-(
Hugo
Profil
Sorry, špatně jsem přečetl dotaz. V tom případě použij toto

$fp = FOpen("./mujsoubor.txt", "a");
rewind($fp);

Funkcí rewind() přesuneš pointer na začátek souboru.
hamstet
Profil *
Laborování s pointerem nepomůže - když zapisuješ do souboru otevřeného s a (append), nový záznam se vždy přidá na konec. Souborový systém to jinak neumí, soubor není databáze.

Snad jediné řešení je načíst celý soubor do pole třeba funcí file(jmeno_soboru) a vypisovat od konce (začínat maximálním indexem a dekremetovat ho k nule).
igamenir
Profil
Už se to tu řešilo: PHP » Zobrazení od zhora dolů(seřazení novinek)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0