Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Zapis do już istniejącego pliku i wyświetlenie nowej zawartości
#1
Witam!

Znalazłem w sieci kod, który umożliwia zapis treści do pliku txt.
Ogólnie wszystko działa dobrze, tylko chciałbym, aby po napisaniu czegoś nowego w formularzu wyświetliło się to też na stronie. Bo w chwili obecnej gdy zmienię coś w formularzu to poprzednia zawartość jest zastępowana nową, a chciałbym zrobić proste dodawanie newsów na stronie.


Formularz:
Kod:
<?php
/*********************************************
* plik formularz.php
*********************************************/

$pole1 = trim($_POST['pole1']);
$pole2 = trim($_POST['pole2']);

if(empty($pole1) and empty($pole2)) {
    
// prosty formularz zawierający dwa pola
echo '<form action="" method="post">
<input type="text" name="pole1" style="width: 200px;" /><br />
<textarea name="pole2" style="width: 200px; height: 100px;">
</textarea><br />
<input type="submit" value="Zapisz" />
</form>';
}
else {
    
    // dane pochodzące z formularza
    $dane = $pole1."`".$pole2."\n";
    // przypisanie zmniennej $file nazwy pliku
    $file = "baza.txt";
    // uchwyt pliku, otwarcie do dopisania
    $fp = fopen($file, "a");
    // blokada pliku do zapisu
    flock($fp, 2);
    // zapisanie danych do pliku
    fwrite($fp, $dane);
    // odblokowanie pliku
    flock($fp, 3);
    // zamknięcie pliku
    fclose($fp);
    
    echo "Dane zostały zapisane!<br />";
    echo "<a href=\"podglad.php\">Zobacz wpisane dane</a>";
}

?>

Wyświetlanie:
Kod:
<?php
/*********************************************
* plik podglad.php
*********************************************/

// wczytanie zawartości pliku do tablicy
$file = file("baza.txt");
// przechodzimy przez tablicę za pomocą pętli foreach
foreach($file as $value) {
// rozbijamy poszczególne linie na części
$exp = explode("`",$value);
}

?>

wyświetlany rozbity tekst
Kod:
<?php echo $exp[0]; ?>
<?php echo $exp[1]; ?>


Dopiero zaczynam przygodę z PHP.
Z góry dziękuję!
Odpowiedz
#2
file_put_contents() + FILE_APPEND
Dobre samopoczucie w tym tygodniu sponsoruje cytat:
Cytat:Mogę tylko tylko na prawo i lewo ale na środek nie mogę.
Odpowiedz
#3
Pierwsze co rzuca się w oczy to zmienne globalne. Poczytaj o register globals:
http://php.net/manual/en/security.globals.php

Powinien dopisywać, bo masz "a"
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Ładowanie pliku przemysuaw 4 4,015 12-03-2013, 01:54
Ostatni post: mateo
  Odczytanie pliku michalszyd 4 3,936 07-01-2013, 00:44
Ostatni post: michalszyd
  Przekierowanie z zachowaniem nowej domeny lomek 5 4,790 06-01-2013, 15:30
Ostatni post: andrzejhi
  [php] Okreslanie wielkosci pliku. xtronix856 2 2,413 02-09-2012, 20:50
Ostatni post: xtronix856
  Pomocy bo nigdzie nie moge tego znaleść.Czym rożni sie plik typu *.rt od pliku html?? evolution123 5 3,652 07-05-2012, 03:57
Ostatni post: kornell

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl