Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Operacje na plikach - podmiana tekstu
Forum PHP.pl > Forum > Przedszkole
Majkelo23
Jakiej flagi powinienem użyć, aby zastąpić cały tekst w danym pliku, na wskazany przeze mnie, inny tekst? w+ czyści i plik pozostaje pusty, r+ tworzy jakieś wielkie cuda w pliku ;/ Co proponujecie?
strife
  1. $content = file_get_contents('tekst_na_podmiane.txt');
  2. $target = 'plik.txt';
  3.  
  4. file_put_contents($target, $content);


Może lepiej tak? smile.gif

A jak się upierasz stosować fopen, to daj fragment kodu.
Majkelo23
Własnie, chyba się 'upieram' oneeyedsmiley02.png

  1. else if ( $user_logged_in && isset($_GET['manage']) && htmlspecialchars($_GET['manage']) == 'files' )
  2. {
  3. if ( !isset($_POST['uploaded']) )
  4. {
  5. $filname = $_POST['filname'];
  6. setcookie('filname', $filname, time() + 15 * 60);
  7. $uchwyt = fopen($path_root . $filname, 'r');
  8. $file = file_get_contents($path_root . $filname);
  9.  
  10. $body = $menu.'<br><br><form action="'.$name_this_file.'?manage=files" method="post"><textarea name="filees" cols="60" rows="4">'.$file.'</textarea><br><input type="submit" name="uploaded" value="Save"></form>';
  11. echo $body;
  12. exit;
  13. }
  14. else if ( isset($_POST['uploaded']) )
  15. {
  16. $filname = $_COOKIE['filname'];
  17. $uchwyt = fopen($path_root . $filname, 'r+');
  18. if ($uchwyt)
  19. {
  20. while (($data = fgets($uchwyt, 4096)) !== false)
  21. {
  22. $zamien = $_POST['filees'];
  23. $zamien = str_replace(array('<?php'), '', $zamien);
  24. $zamien = stripslashes($zamien);
  25. $zamien = htmlspecialchars($zamien);
  26. $zamien = str_replace(array('&gt;'), '>', $zamien);
  27. fputs($uchwyt, $zamien);
  28. }
  29. if (!feof($uchwyt))
  30. {
  31. echo "Błąd: niespodziewany błąd fgets()\n";
  32. }
  33. fclose($uchwyt);
  34. echo "gotowe";
  35. exit;
  36. }
  37. }
  38. }


Znalazłem odpowiedź:
a) pętla while wszystko psuła,
cool.gif flaga, która spełniła moje oczekiwania - w+ wink.gif
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.