Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Ajax zmiana wartości
nikestylex7
post 14.11.2013, 22:45:19
Post #1





Grupa: Zarejestrowani
Postów: 386
Pomógł: 7
Dołączył: 22.04.2010
Skąd: Ziemia

Ostrzeżenie: (20%)
X----


Ogólnie to pobieram wartość z bazy i ją wyświetlam. Gdy jestem na stronie i wiadomość doszła do mnie to muszę odświeżyć stronę aby mi pokazało że do mnie doszła. Chciałbym przerobić to na ajax aby pokazywało ją od razu.

  1. <?php
  2. $user = $_SESSION['nick'];
  3. $pocztA = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM poczta WHERE do='$user' AND status=1"));
  4. if($pocztA[0] == 0){
  5. echo "Nie masz żadnych wiadmości";
  6. }
  7. else{
  8. echo "Masz".$pocztA[0]." wiadomości.";
  9. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
-Lovelas-
post 15.11.2013, 01:48:28
Post #2





Goście







Też jestem ciekawy ponieważ też mi się to przyda...
Go to the top of the page
+Quote Post
valkirek
post 15.11.2013, 07:00:30
Post #3





Grupa: Zarejestrowani
Postów: 117
Pomógł: 6
Dołączył: 24.07.2013

Ostrzeżenie: (0%)
-----


Kawałek kodu który podałeś w osobnym pliku a w miejscu gdzie ma się pojawiać info o nowej wiadomości najprościej dodać setInterval() i odświeżać co x sekund funkcję load() ten osobny plik
Go to the top of the page
+Quote Post
nikestylex7
post 15.11.2013, 11:43:11
Post #4





Grupa: Zarejestrowani
Postów: 386
Pomógł: 7
Dołączył: 22.04.2010
Skąd: Ziemia

Ostrzeżenie: (20%)
X----


hmm w sumie nie bardzo mi to pasuje chciałbym aby zmieniała się wartość wtedy jak coś odbierze z bazy a nie co kilka sekund się odświerzało. a jak by było tutaj jakbym użył json?
Go to the top of the page
+Quote Post
valkirek
post 15.11.2013, 20:48:37
Post #5





Grupa: Zarejestrowani
Postów: 117
Pomógł: 6
Dołączył: 24.07.2013

Ostrzeżenie: (0%)
-----


Szczerze to powiem tak, tak czy siak musisz odświeżać co x sekund żeby zapytanie poszło do bazy, jak zapytanie nie pójdzie do bazy to nic się nie dowiesz....

Inna moźliwość to jeżeli masz wiele tysięcy wiadomości na minutę to zapisujesz wszystko do pliku txt i co minutę odświeżasz ajaxem.

Jak coś odbierze z bazy to musi najpierw tą baze zapytać.... json to js więc to to samo.

Zapytanie do bazy musi być chyba, że wiadomosci zapisujesz bezpośrednio w pliku txt heh i każdy sobie je poczyta...

Ten post edytował valkirek 15.11.2013, 20:52:12
Go to the top of the page
+Quote Post
Lwik
post 15.11.2013, 21:34:00
Post #6





Grupa: Zarejestrowani
Postów: 39
Pomógł: 8
Dołączył: 11.05.2012

Ostrzeżenie: (0%)
-----


Patrząc na budowę zapytania to jakiś mały system z użytkownikami. Jeśli chcesz oszczędzić bazę to najlepiej zrób to w ten sposób:
=> wiadomość jest wysyłana
=> dodajesz rekord do bazy danych
=> zliczasz nieodebrane wiadomości odbiorcy, aktualizujesz liczbę nieodebranych w tabeli z użytkownikami
=> przy odwołaniu AJAX wyświetlasz i tak pobierane już dane z informacjami o użytkowniku.

Ten post edytował Lwik 15.11.2013, 21:38:58
Go to the top of the page
+Quote Post
werdan
post 15.11.2013, 22:02:19
Post #7





Grupa: Zarejestrowani
Postów: 354
Pomógł: 100
Dołączył: 14.11.2013
Skąd: Płock

Ostrzeżenie: (0%)
-----


Sprawdzaj przy odswiezeniu/wejsciu na daną strone oraz ajaxem np. co 1 minute (setTimeout), nie musi byc za czesto, to nie notowania giełdy czy bitcointa biggrin.gif
Go to the top of the page
+Quote Post
valkirek
post 15.11.2013, 22:07:13
Post #8





Grupa: Zarejestrowani
Postów: 117
Pomógł: 6
Dołączył: 24.07.2013

Ostrzeżenie: (0%)
-----


Cytat
Sprawdzaj przy odswiezeniu/wejsciu na daną strone oraz ajaxem np. co 1 minute (setTimeout), nie musi byc za czesto, to nie notowania giełdy czy bitcointa biggrin.gif


setInterval o wiele lepszy

Ten post edytował valkirek 15.11.2013, 22:09:55
Go to the top of the page
+Quote Post
nikestylex7
post 17.11.2013, 02:04:04
Post #9





Grupa: Zarejestrowani
Postów: 386
Pomógł: 7
Dołączył: 22.04.2010
Skąd: Ziemia

Ostrzeżenie: (20%)
X----


Mógłby ktoś podać jakiś przykład w ajax odświeżanie co 1min ? Aktualnie ajax nie umiem dopiero zamierzam się nauczyć. Będę wdzięczny. Pozdrawiam

Dałem radę chłopaki :

  1. <script>
  2. $(document).ready(function(){
  3. var refreshIT = function(){
  4. $.ajax({
  5. method:'get',
  6. url:'https://page.com/privateMessageCount.php',
  7. success:function(data){
  8. $("#count").html(data);
  9. }
  10. });
  11. }
  12. setInterval(refreshIT,5000);
  13. });
  14. </script>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 16:56