Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zapis pliku
Forum PHP.pl > Forum > Przedszkole
henio
Fragment kodu
  1. <?php
  2. // Sprawdzenie czy został wyedytowany plik i wciśnięto przycisk akcji
  3. if(@$_POST['czy1'] && @$_POST['plik2'] && @$_POST['plikstary'] && @$_POST['nazwa_plik'])
  4. {
  5. // Wyświetlenie nagłówka strony
  6. naglowek("Musisz podać więcej danych");
  7. include("naglowek.php");
  8. include("menu.php");
  9. echo "<div id=\"tresc\">\n";
  10. echo "Dane zostały zmienione\n";
  11.  
  12. // Utworzenie kopii zapasowej starego pliku
  13. $plik1 = fopen("../podstrony/kopia-".$_POST['nazwa_plik']."", "w");
  14. fputs($plik1, $_POST['plikstary']);
  15.  
  16. //  
  17. $plik2 = fopen("../podstrony/".$_POST['nazwa_plik']."", "w+");
  18. fputs($plik2, $_POST['plikstary']);
  19. }
  20. ?>


Tu jest fragment kodu, który ma nadpisać istniejący plik w celu jego edycji oraz sotworzyć kopię pliku z wersją przed edytowaniem.

Kopia jest tworzona, ale plik już istniejący nie ulega zmianie. Szukałem w trybach otwarcia pliku w fukncji fopen i nic. Pytam więc o poradę
neverever
  1. <?php
  2. ...
  3.  
  4. $plik1 = fopen('../podstrony/kopia-'.$_POST['nazwa_plik'], 'w');
  5. fputs($plik1, $_POST['plikstary']);
  6.  
  7. $plik2 = fopen('../podstrony/'.$_POST['nazwa_plik'], 'w+');
  8.  
  9. ...
  10. ?>
nexis
Może coś takiego pomoże:

  1. <?php
  2. /*
  3.  * $_POST['nazwa'] - nazwa pliku (np. plik.txt)
  4.  * $_POST['tresc'] - zawartość pliku (np. Hello World!)
  5. */
  6. if (isset($_POST['nazwa'], $_POST['tresc'])) {
  7.  
  8.  // Tworzenie kopii zapasowej
  9.  if (!file_exists($_POST['nazwa'])) exit('Plik "' . $_POST['nazwa'] . '" nie istnieje!');
  10.  $backup = file_get_contents($_POST['nazwa']);
  11.  file_put_contents($_POST['nazwa'] . '.backup', $backup); // plik.txt.backup
  12.  
  13.  // Zapisanie zmian
  14.  file_put_contents($_POST['nazwa'], $_POST['tresc']);
  15. }
  16. ?>
henio
Dzięki. Już wiem gdzie był błąd. Siadłem po jakimś czasie i go zauważyłem
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.