Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: edycja wartości zmiennej
Forum PHP.pl > Forum > PHP
Kildyt
Witam userów

Cały czas szukam na google, ale nie mogę znaleźć edycji wartości zmiennej, która jest zapisana w pliku. sad.gif

Na przykład mam w pliku a.php wpisaną zmienną o wartości text. Z pliku b.php używając formularza chciałbym zmienić wartosć zmiennej z text na zmieniony.

Mam taki kod ale nic sie nie dzieje:
  1. <?php
  2. $default_title_ = $_POST["default_title_"];
  3. $description_meta_ = $_POST["description_meta_"];
  4.  
  5. function footer_slash($in)
  6. {
  7. $in = addslashes($in);
  8. $in = str_replace('"', '"', $in);
  9.  
  10. $in = str_replace("n", ' ', $in);
  11. $in = str_replace("r", ' ', $in);
  12.  
  13. return $in;
  14. }
  15.  
  16. $file = join('', file('../carrot.php'));
  17.  
  18. //echo '<pre>'.htmlspecialchars($file);
  19.  
  20. $file = preg_replace("/(.)default_title = '(.+)';/", "$default_title = '".footer_slash($default_title_)."';", $file);
  21. $file = preg_replace("/(.)description_meta = '(.+)';/", "$description_meta = '".footer_slash($description_meta_)."';", $file);
  22.  
  23. $file = stripslashes($file);
  24.  
  25. $fid=fopen('../carrot.php',"w");
  26. flock($fid,2);
  27. fwrite($fid, $file);
  28. flock($fid,3);
  29. fclose($fid);
  30. ?>


Oczywiście dane są dostarczane, a plik carrot.php ma uprawnienia 777.

Proszę o pomoc.
piczu
jezeli to jest jakis plik konfiguracyjny to latwiej jest nadpisac go

  1. <?php 
  2. $stuff = "<?
  3.  
  4. $temp='$temp';
  5.  
  6. $temp2='$temp';
  7.  
  8.  
  9. ?>";
  10. $f = fopen("config.php", "w") or die ("nie można otworzyc pliku");
  11.  
  12. fwrite($f, $stuff);
  13.  
  14. fclose($f); ?>
jjkk
ja bym zrobl to tak.
czytasz plik konfiguracyjny poleceniem file_get_contents " title="Zobacz w manualu PHP" target="_manual. zamieniasz odpowiednia linijke i wykonujesz file_put_contents" title="Zobacz w manualu PHP" target="_manual. wada - musisz znac co jest zapisane w ktorej linijce:)

dziwnie to roziwazales, nie latwiej by bylo wykorzystac xml lub pliki ini (po to sa wlasnie, do pilkow konf. poczytaj o parse_ini_file" title="Zobacz w manualu PHP" target="_manual)...
Kildyt
@piczu do twojego kodu wyskakuje:
Notice: Undefined variable: temp in /var/www/html/www/redbook/admin/sysOustawienia.php on line 325
Notice: Undefined variable: temp in /var/www/html/www/redbook/admin/sysOustawienia.php on line 328

Wiecie jak to zrobić? Ten pierwszy kod wyciągnąłem kiedyś z jportala-a i kiedyś chodził, a teraz nie ruszy.
Proszę o pomoc.
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.