Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Baza danych oparta na plikach
Forum PHP.pl > Forum > Przedszkole
daker
krzystam z tutoriala: http://webmade.org/porady/porady.php?id=127
mam taki problem:
skrypt sluzy dla mnie do newsow i gdy dodaje drugi , trzeci i nastepny news
to chcialbym aby plik dodaj.php nie dodawal nowych informacji pod poprzednimi , a wrecz przeciwnie, ma je dodawac nad porzednimi.

Jak takie cos zrobic questionmark.gif

Pozdrawiam
dr_bonzo
Mozesz odczytac wszystko i wypisac w odwrotnej kolejnosci.

Albo wczytac caly string do pliku, wpisac do niego nowa zawartosc i dopisac stara (ze stringa)
Jabol
otwórz w trybie dodawania na początku. To jest chyba w trybie zamiast "w" to "a". Albo zrób sobie fseek.
daker
probowalem tak:
  1. <?
  2. if ($_POST['button'] == "wyslij") {
  3. /* sprawdzam czy dane zostały wysłane z formularza */
  4. $plik = "../db.txt";
  5. if (is_writeable($plik)) {
  6. /* sprawdzam czy plik jest do zapisu */
  7. if (!$handle = fopen($plik, "a")) echo "Nie mogę otworzyć pliku...";
  8. if (fseek($handle, 0));
  9. if (fwrite($handle, $_POST['temat']." || ".$_POST['tresc']." || ".$_POST['autor']." || ".$_POST['data']."n") === FALSE) echo "Nie mogę zapisać danych do pliku...";
  10. else echo "Dane zostały dodane...";
  11. fclose($handle);
  12. } else echo "Plik nie istnieje lub jest nie do zapisu...";
  13. } 
  14. ?>

no ale nie dziala :// dalej dodaje tresc pod spodem sad.gif
pewnie cos zle zrobilem ale sie dopiero ucze ...
probowalem to samo z rewind() a tez nie zadzialalo :/
edit:
zadzialal tryb "r+"
ale gdy probuje dodac kolejnego newsa to mi nie dodaje a zamienia poprzedniego

edit2:
problem byl banalny
posluchalem dr_bonzo
uzylem array_reverse i voila
thx
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.