Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Newsy w pliku tekstowym
Mefiuu
post
Post #1





Grupa: Zarejestrowani
Postów: 371
Pomógł: 18
Dołączył: 23.11.2008

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


Witam. Chcę zrobić skrypt newsów oparty na pliku tekstowym. Zrobiłem tak:

index.php
Kod
<html>
<head>
<title> Zatwierdzenie </title>
</head>
<body>
<?
include("news.txt");
?>
</body>
</html>

Czyli tylko zaincludowałem z pliku.
Teraz formularz dodający:
dodaj.html
Kod
<html>
<head>
<title> Dodaj </title>
</head>
<body>
<form action="news.php" method="post">
<p>Podaj treść newsa: <br />
<input type=text name="news" size="100"><br />
</p>
<p>Autor <br />
<input type=text name="autor" size="10"><br />
</p>
<p>Data: <br />
<input type=text name="data" size="9"><br />
</p>
<input type=submit value="Zatwierdź">
</form>
</body>
</html>

I tutaj nadal jest pięknie. Teraz schody (jak dla mnie):
dodaj.php
Kod
<html>
<head>
<title> Dodaj </title>
</head>
<body>
<?
$news = $_POST['news'];   // pobrałem dane z formularza
$autor = $_POST['autor'];
$data = $_POST['data'];

echo "$news";  // wyświetliłem te dane
echo "$autor";
echo "$data";

$plik = fopen("news.txt", "r+");   // otwieram plik, ustawiam tryb (r+ aby zapisało na początku)
fwrite($plik, $news, $autor, $data);   // zapisuję
fclose($plik);   // zamykam
?>
<a href="index.php">Zobacz newsa </a>  // wiadomo chyba
</body>
</html>


jednak wywala mi błąd:
Kod
[b]Warning[/b]:  Wrong parameter count for fwrite() in [b]/var/www/sites/yoyo.pl/m/e/mefiuu/news.php[/b] on line [b]20[/b]
    [u]
[/u]

i danych mi nie dopisuje. Zwracam się do Was z prośbą, bo rozwiązania szukam i nie znajduję. Na pewno to jakaś literówka czy coś, ale jednak nei mogę sobie poradzić. Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Darti
post
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


Wybierz inny tryb dla fopen, r+ jest tylko do odczytu
no i zobacz fwrite" title="Zobacz w manualu PHP" target="_manual


p.s. nie stosuj takich bajerów na serwerze produkcyjnym, bo wystarczy że w newsie ktoś da trochę kodu php i pozamiatane ...

Ten post edytował Darti 22.07.2009, 22:01:59
Go to the top of the page
+Quote Post
Mefiuu
post
Post #3





Grupa: Zarejestrowani
Postów: 371
Pomógł: 18
Dołączył: 23.11.2008

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


zastosowałem już "a";"a+";"w";"w+";"x" i nic ;/ dalej błąd fwrite
Go to the top of the page
+Quote Post
Darti
post
Post #4





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


  1. <?php
  2. fwrite($plik, $news.$autor.$data);   // cos zapisze, ale mozna sobie gdzies taki zapis wsadzić ... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
  3. ?>
Go to the top of the page
+Quote Post
Mefiuu
post
Post #5





Grupa: Zarejestrowani
Postów: 371
Pomógł: 18
Dołączył: 23.11.2008

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


ok, a jak zrobić, aby dopisać kolejny news, na górze? "a+" ?
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Musisz wczytać całą zawartość pliku, dopisać przed to wszystko i całość ponownie wsadzić.
Go to the top of the page
+Quote Post
Mefiuu
post
Post #7





Grupa: Zarejestrowani
Postów: 371
Pomógł: 18
Dołączył: 23.11.2008

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


no to tego już nie zrobię...
Go to the top of the page
+Quote Post
Darti
post
Post #8





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


  1. <?php
  2. $old = file_get_contents('news.txt');
  3. $plik = fopen("news.txt", "w+");
  4. fwrite($plik, $news.$autor.$data.$old);
  5. ?>


Ten post edytował Darti 22.07.2009, 22:15:05
Go to the top of the page
+Quote Post
erix
post
Post #9





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A file_put_contents" title="Zobacz w manualu PHP" target="_manual? (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
Go to the top of the page
+Quote Post
Darti
post
Post #10





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


też się nadaje, chodzilo ino o wrzutkę na poczatku pliku, zbyt dużo piwa obnizyło moje IQ grubo poniżej 60 ...

Ten post edytował Darti 22.07.2009, 22:52:51
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 12:39