ďťż
Podstrony
|
telcocafeWitam ponownie. Dzięki Beldzio za podpowiedź. Skrypt zaczyna chulać. Niestety jest dziwna przeszkoda i jak narazie nie moge są z nią poradzić. Otóż gdy użytkownik wpisuje swoją wartość do formularza i wysyła ją to dzięki zmiennej $PHP_SELF skrypt ładuje się od nowa, ale żeby wyświetlił starą wartość + nową trzeba dodatkowo odświeżyć strone. Jak zlikwidować to. Chodzi mi o to co trzeba zrobić żeby od razu wyświetlał nowa wartość a nie dopiero po odświeżeniu.Jeżeli ktoś nie kuma o co chodzi proponuje odnieść się do mojego poprzedniego posta z dnia 14.08 pod tytułem [MySQL] Problem z bazą :) powinno być formularz -> zatwierdzenie -> pokazanie :), a masz zapewne formularz -> zatwierdzenie, pokazanie - pokazanie starej zawartości ;) jakiś kod by się przydał, żeby obadać co trza zmienić. <?php include "plik.inc"; $id_connect = db_connect($default_dbname); $query = "SELECT budynki, domy, warsztaty FROM budynki WHERE userid = 'Fixus'"; $result = mysql_query($query); $query_data = mysql_fetch_array($result); $budynki = $query_data["budynki"]; $domy = $query_data["domy"]; $warsztaty = $query_data["warsztaty"]; $nowe_domy = $_POST['nowe_domy']; $dodaj = $_POST['dodaj']; ?> ?> <HTML> <HEAD> </HEAD> <BODY> <TABLE BORDER="1" CELPPADING="1"> <FORM METHOD="post" ACTION="<?php $PHP_SELF; ?>"> <TR> <TH>Masz <?php echo $domy; ?> domów</TH> <TD> <INPUT TYPE="text" NAME="nowe_domy"> </TD> </TR> <TR> <TD> <INPUT TYPE="submit" NAME="dodaj"> </TD> </TR> </FORM> </TABLE> </BODY> </HTML> <?php if($nowe_domy > 0) { $domyy = $domy + $nowe_domy; $update = "UPDATE budynki SET domy = '$domyy' WHERE domy = '$domy'"; $rezultat = mysql_query($update); $nowe_domy = 0; } else if($dodaj == 0) { $domyy = $domy; $update = "UPDATE budynki SET domy = '$domyy' WHERE domy = '$domy'"; $rezultat = mysql_query($update); $nowe_domy = 0; } ?> Bełdzio obczaj. Bo próbowałem na różne sposoby, ale pewnie twoje fachowe oko wychwyci to czego moje nie wychwyci :P nom tak jak myślałem najpierw pobierasz dane, a później uaktualniasz więc nie widzisz zmian Spróbuj tak: <?php include "plik.inc"; $id_connect = db_connect($default_dbname); $nowe_domy = $_POST['nowe_domy']; $dodaj = $_POST['dodaj']; if($nowe_domy > 0) { $domyy = $domy + $nowe_domy; $update = "UPDATE budynki SET domy = '$domyy' WHERE domy = '$domy'"; $rezultat = mysql_query($update); $nowe_domy = 0; } else if($dodaj == 0) { $domyy = $domy; $update = "UPDATE budynki SET domy = '$domyy' WHERE domy = '$domy'"; $rezultat = mysql_query($update); $nowe_domy = 0; } $query = "SELECT budynki, domy, warsztaty FROM budynki WHERE userid = 'Fixus'"; $result = mysql_query($query); $query_data = mysql_fetch_array($result); $budynki = $query_data["budynki"]; $domy = $query_data["domy"]; $warsztaty = $query_data["warsztaty"]; ?> <HTML> <HEAD> </HEAD> <BODY> <TABLE BORDER="1" CELPPADING="1"> <FORM METHOD="post" ACTION="<?php $PHP_SELF; ?>"> <TR> <TH>Masz <?php echo $domy; ?> domów</TH> <TD> <INPUT TYPE="text" NAME="nowe_domy"> </TD> </TR> <TR> <TD> <INPUT TYPE="submit" NAME="dodaj"> </TD> </TR> </FORM> </TABLE> </BODY> </HTML> To możesz mi powiedzieć którą część kodu gdzie przenieść ? Bo jakbyn nie próbował jest jeszcze gorzej :P Musisz dodać nowy wpis do bazy zanim odczytasz dane o domach itd. No więc Marku zrobilem tak wcześniej, ale zrobiłem tak jeszcze raz dokładnie jak pokazałeś. Doprowadziło to do tego, że dane wogołe się nie aktualizują :P No co jest nikt nie ma pomysłu? |
|||
Sitedesign by AltusUmbrae. |