Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem z pętlą, Jak zrobić żeby post nie był powielany
zolax
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 13.04.2012

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


Witam mam problem z tą pętlą ponieważ gdy aktualizuję posta ona robi dwa posty. Jak zrobić żeby tylko aktualizowała a nie dodawała nowego.
  1. foreach($posty as $post) {
  2. if ($line_num == $_POST['post_number']) {
  3. $post_filtrowany = preg_replace('/\r\n/', " ", $_POST['editor']);
  4. $post_filtrowany = preg_replace('/###/', "", $post_filtrowany);
  5. $data = date("Y-m-d H:i:s");
  6. $wpis = "$data###".$_POST['post_title']."###$data###$login###".$post_filtrowany."###\n";
  7. fwrite($nowy_plik, $wpis);
  8. }
  9. else
  10. fwrite($nowy_plik, $post);
  11. $line_num++;
  12. }
  13. fclose($nowy_plik);
  14. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tolomei
post
Post #2





Grupa: Zarejestrowani
Postów: 450
Pomógł: 135
Dołączył: 18.11.2010
Skąd: Wschowa

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


@crocodillo dobrze kombinuje! Jeśli jest różnica o jedną pozycję w indeksach to edytowany post zostanie wpisany obok starego, a nie na jego miejscu.
Dobre.
Go to the top of the page
+Quote Post
crocodillo
post
Post #3





Grupa: Zarejestrowani
Postów: 215
Pomógł: 44
Dołączył: 31.07.2011
Skąd: wrocław

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


Cytat(tolomei @ 14.04.2012, 22:32:25 ) *
Jeśli jest różnica o jedną pozycję w indeksach to edytowany post zostanie wpisany obok starego, a nie na jego miejscu.


A dokładniej to inny post zostanie zastąpiony nowym wpisem. Dobrze by było też zapisać sobie indeksy a nie robić tego po numerze linii, szczególnie jeśli za każdym razem edytujesz cały plik.

Możesz też przechowywać te posty w normalnej tablicy, a zapisując do pliku po prostu użyj serialize() i unserialize() odczytując z pliku.
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 01:39