Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Odświeżanie iframe po przesłaniu formularza
Forum PHP.pl > Forum > Przedszkole
miras
Witam, mój problem polega na tym, że: mam sobie stronę i w pewnym miejscu tej strony jest ramka iframe z tego samego serwera dajmy na to z pliku x.html
i mam na tej samej stronie formularz, który edytuje plik x.css, do którego jest podłączony plik x.html i po edycji pliku x.css chciałbym, aby okienko z iframe się aktualizowało i wyświetlało na bieżąco wszystko, co zmieniłem..

trochę zamotwałem, ale mam nadzieję, że zrozumiecie o co mi chodzi smile.gif

Załączam jeszcze mój plik, który jest odpowiedzialny za edycję pliku x.css (+ moje rozwiązanie, które nie działa)

  1. <?php session_start();
  2.  
  3. if ($ref==1) {
  4. header("Location: step_2.php?page=ustawienia_css");
  5. $ref=0;
  6. }
  7.  
  8. $edycja = "sciezka/x.css";
  9.  
  10. if (isset($_POST["tekst"]) && file_exists($edycja)) {
  11. $f = fopen($edycja, "w");
  12. fputs($f, stripslashes($_POST["tekst"]));
  13. fclose($f);
  14. $ref=1;
  15. }
  16.  
  17.  
  18.  
  19.  
  20. if ($edycja<>"" && file_exists($edycja)) {
  21. echo '<form action="" method="post"><input type="hidden" name="edycja" value="'.$edycja.'" /><textarea name="tekst" rows="20" cols="50">';
  22. $f = fopen($edycja,"r");
  23. while(!feof($f)) echo fread($f,1024);
  24. fclose($f);
  25. echo '</textarea><input type="submit" value="Zapisz" /></form>';
  26. }
  27.  
  28. ?>
Posio
można to zrobic na 3 sposoby wg. mnie:
-odświeżać content ramki AJAX'em
-odświeżyć całą stronę


albo po prostu przeładowywać samą iframe (po wpisaniu "refresh iframe" w google)

Kod
window.setInterval("reloadIFrame();", 30000);

function reloadIFrame() {
document.frames["frameNameHere"].location.reload();
}


wpisz sobie czas co jaki ma być odświeżana ramka albo zmodyfikuj tak aby odświeżało po wysłaniu forma i wsio.
miras
zrobiłem to tak: (na kodzie, który podałeś)

  1. <script>
  2. window.setInterval("reloadIFrame();", 1);
  3.  
  4. function reloadIFrame() {
  5. document.frames["mobi"].location.reload();
  6. }
  7. </script>


i

  1. <?php echo '<iframe id="mobi" name="mobi" src="'.$katalog.'" height="600" width="294"></iframe>'; ?>


i nie działa, co jest nie tak?
styryl
Zobacz

http://jsfiddle.net/Rcfyc/2/
miras
Ok, a jak zrobić, żeby po przesłaniu formularza się odświeżało ?

Umie ktoś mi pomóc ?
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.