Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Zapis do już istniejącego pliku i wyświetlenie nowej zawartości - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster)
+--- Wątek: Zapis do już istniejącego pliku i wyświetlenie nowej zawartości (/thread-zapis-do-juz-istniejacego-pliku-i-wy%C5%9Bwietlenie-nowej-zawarto%C5%9Bci)



Zapis do już istniejącego pliku i wyświetlenie nowej zawartości - Ds3 - 28-08-2011

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ę!


RE: Zapis do już istniejącego pliku i wyświetlenie nowej zawartości - Pedro84 - 28-08-2011

file_put_contents() + FILE_APPEND


RE: Zapis do już istniejącego pliku i wyświetlenie nowej zawartości - Kartofelek - 28-08-2011

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"