Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Odświeżanie po 'submit'? Odczyt z bazy danych? Jeszcze coś innego?
Forum PHP.pl > Forum > Przedszkole
JaNieWiem
Witam serdecznie,

Wybaczcie tytuł postu, nie mam pojęcia jak go nazwać. Tworzę pewien skrypcik, którego zadaniem jest zapisanie wyboru koloru (radio) użytkownika do bazy, a następnie wygenerowanie diva o tle odczytanym z bazy. Wszystko działa OK, za wyjątkiem tworzenia samego kolorowego diva. Aby nieco ułatwić Wam zrozumienie tematu proszę rzućcie okiem na http://www.youtube.com/watch?v=BtwTu8_zTOs - właśnie w tym rzecz. Wartość #KOLORu jest wyświetlana zaraz po submit, natomiast pojawienie się koloru tła wymaga jeszcze jednego przeładowania strony. Czy macie może jakiś pomysł czym to jest spowodowane / jak temu zaradzić?

  1. echo "<div id='PContainer'>";
  2. if(isset($ContentBG)){
  3. echo "<div id='PBody' style=background-color:#$ContentBG;>";
  4.  
  5. echo "</div>";
  6. } else {
  7. echo "<div id='PBody'>";
  8. var_dump($ContentBG);
  9. echo "</div>";
  10. }

$ContentBG jest pobierane przez plik.php includowany na samym początku skryptu.
Turson
Biorę pod uwagę, że taka zmienna jak $ContentBG to $_POST['ContentBG'], które gdzieś wyżej zdefiniowałeś i jesteś pewny, że dane z formularza są prawidłowe.

Cytat
Wartość #KOLORu jest wyświetlana zaraz po submit, natomiast pojawienie się koloru tła wymaga jeszcze jednego przeładowania strony. Czy macie może jakiś pomysł czym to jest spowodowane / jak temu zaradzić?

Tak, mamy pomysł czemu tak się dzieje. PHP działa po stronie serwera i wymaga przeładowania strony. Jeżeli chcesz to zrobić w czasie rzeczywistym - JavaScript i jQuery (jedna linijka)
JaNieWiem
Dziękuję Turson za odpowiedź. Nie wiem czemu żyłem w przeświadczeniu, że po wciśnięciu submit strona jest przeładowywana z serwera - po zastanowieniu się to rzeczywiście nie ma sensu smile.gif. Pokombinuję z jQuery, pewnie niebawem znów przybiegnę tutaj z płaczem biggrin.gif. Pozdrawiam!
Turson
Da radę, coś mi się pokręciło smile.gif
  1. <style type="text/css">
  2. #PBody{width:100px;height:100px;border:1px solid black}
  3. </style>
  4. <form action="" method="post">
  5. <input type="text" name="ContentBG">
  6. <input type="submit">
  7. </form>
  8. <?php
  9. echo "<div id='PContainer'>";
  10. if(isset($_POST['ContentBG'])){
  11. echo "<div id='PBody' style='background-color:#{$_POST['ContentBG']}'>";
  12. }
  13. else {
  14. echo "<div id='PBody'>";
  15. echo "</div>";
  16. }
  17. echo "</div>";
JaNieWiem
Jeeej to dopiero niespodzianka! biggrin.gif Dzięki serdeczne! specool.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.