Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][js][ajax]zapytanie bez odświeżania
daniel1302
post 11.08.2007, 11:50:18
Post #1





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


Witam to mój pierwszy post bo jakoś wczesniej sobie radziłem nie znam nic js ale napisałem przelicznik czasu
  1. <script language="JavaScript">
  2. function game_time(dzien, godziny, minuta)
  3. {      
  4.      minuta += 1;
  5.      /*<? mysql_query("UPDATE users SET energy=energy+1 WHERE id=1"); ?>*/
  6.      if(minuta > 59)
  7.      {
  8.            minuta = 0;
  9.            godziny += 1;
  10.            <? mysql_query("UPDATE config SET value=0 WHERE setting='minuta'");
  11.      mysql_query("UPDATE config SET value=value+1 WHERE setting='godziny'");?>
  12.      }
  13.      if(godziny > 23)
  14.      {
  15.            godziny = 0;
  16.            dzien += 1;
  17.            <? mysql_query("UPDATE config SET value=0 WHERE setting='godziny'");
  18.      mysql_query("UPDATE config SET value=value+1 WHERE setting='day'");?>
  19.      }
  20.      
  21.      t_dzien = dzien;
  22.      t_godziny = godziny;
  23.      t_minuta = minuta;
  24.      
  25.      if(minuta < 10)
  26.      {
  27.            t_minuta = "0"+minuta;
  28.      }
  29.      if(godziny < 10)
  30.      {
  31.            t_godziny = "0"+godziny;
  32.      }
  33.      
  34.      time = "Dzień "+t_dzien+" "+t_godziny+":"+t_minuta;
  35.      
  36.      obj_gametime = document.getElementById('gametime_id');
  37.      obj_gametime.innerHTML = time;
  38.                              
  39.      setTimeout("game_time("+dzien+", "+godziny+", "+minuta+")", 60000/6);                        
  40. }
  41. // -->
  42. </script>

I mam 2 problemy aby wykonało zapytanie
  1. mysql_query("UPDATE config SET value=0 WHERE setting='minuta'");
  2. mysql_query("UPDATE config SET value=value+1 WHERE setting='godziny'");


to muszę odświeżyć stronę idealnie gdy minuta = 0
i drugi licznik nie działa gdy nikogo niema na stronie czy da sie to zmienić nieznam się na js napisałem to na podstawie zegarka. proszę o pomoc
Go to the top of the page
+Quote Post
sf
post 11.08.2007, 11:53:35
Post #2





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

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


Nie rozumiem dlaczego opierasz to na bazie danych.. ale jeśli już chcesz wykonywać takie operacje to powinieneś się zainteresować ajaxem ( javascript odpala skrypt php na serwerze).


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post
daniel1302
post 11.08.2007, 11:55:28
Post #3





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


Ok ale ja narazie chce sie php nauczyc z php zacząłem 2 miesiące temu i pisze proste skrypty
Go to the top of the page
+Quote Post
wlamywacz
post 11.08.2007, 13:35:20
Post #4





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

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


Co Ty odwalasz ? :| Jaki cudem łączysz php z js ? Skoro one nie mają nic ze sobą wspólnego ? Jedyne wyjście to ajax
Go to the top of the page
+Quote Post
daniel1302
post 11.08.2007, 16:28:57
Post #5





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


No to mi ktoś pomoze jak wykonac takie zapytanie i zeby licznik chodzil jak nikogo niema na stronie?
Go to the top of the page
+Quote Post
Cysiaczek
post 11.08.2007, 17:36:38
Post #6





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




To tak nie działa. Mieszasz JS i PHP, a tego nie wolno robić. Zrób sam kod JS bez php. Gdy licznik dojdzie do wyznaczonego miejsca, wyślij poprzez ajax (użyj n,. advAjax) żądanie updatowanie bazy (po prostu wywołaj poprzez ajax inny plik php, np. updateMyBase.php).
Jako parametry możesz podać gotowy czas.
Czyli




Pozdrawiam.

btw - przenoszę
Powód edycji: popsul się kod ;/


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
daniel1302
post 11.08.2007, 18:24:20
Post #7





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


Sprubuje a teraz drugi problem zeby chodzil jesli nikogo niema na stronie
Go to the top of the page
+Quote Post
Cysiaczek
post 11.08.2007, 18:30:58
Post #8





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Nie zrobisz tego w ten sposób - poczytaj o CRON, bo strona istnieje tylko gdy ktoś na niej jest.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
daniel1302
post 13.08.2007, 09:50:31
Post #9





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


Witam prosze jeszcze o pomoc próbowałem dwa dni zboic to z zapytaniami ale nierozumie ajaxu nierozumie nawet niektórych zeczy php jak niepoucze sięz 2 dni i niepokombinuje a tego niemoge kurs przeczytalem 9 razy prosze jak zorbic aby zapytanie bylo generowane bo musze odswierzyc co do sekundy a jesli pozniej to nic
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: 8.07.2025 - 05:12