Jak wstawić kod php do js


(Konradnie1) #1

Witam mam tekie odliczanie czasu:

[/code]


Chcę zrobić ze po upływie czasu będzie wyświetlać tekst jw i zmienialo wartości w bazie danych mysql.

Jak zamiast tego:

[code]document.getElementById('sekundy').innerHTML = 'Zako_czono trening';

wstawie kod php to nie działa.

Jak to zrobić??


(system) #2

Trochę nie napiszę w temacie, ale zamień polskie znaki, które wpisałeś w edytorze kodu na znaki z kodu HTML.

W edytorze napisałeś:

Zakończono

Pokazuje:

Zako_czono

Zamień polskie znaki na kod z ponizszej strony.

pl.wikipedia.org/wiki/Alfabet_polski


(Konradnie1) #3

Wiem o tym mam eng win i mi polskich znakow nie wyświelta i jak gdzieś sa polskie znaki (w jakims pliku to mi na stopki zamienia).

A co z tematem??

Jak wstawić php do js??


(Grzegorz Olszewski) #4

Rany... Nie można wstawić kodu php do js. Kod php jest wykonywany na serwerze, a do przeglądarki jest wysyłany tylko rezultat (jako tekst). Kod js jest wykonywany tylko w przeglądarce i nie ma możliwości odwołania się np. do bazy danych (która jest na serwerze). Nie da się tego pomieszać.

Musisz wysłać informację AJAXem do specjalnego pliku php, który zapisze informację do bazy. Podstawowe informacje na ten temat:

http://www.w3schools.com/ajax/default.asp

Jeśli używasz jQuery:

http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery#Rate_me:_Using_Ajax


(Konradnie1) #5

No własnie nie znam js, jQuery ani ajaxa dlatego się pytałem ale znalazłem inny sposób.

document.getElementById('sekundy').innerHTML = '$info';

w $info jest cały tekst jaki chcę wyświetlić a zmiany w bazie robie wcześniej a jak skonczy odliczać to tylko wyświetlam czy zmieniono czy nie.

Nie wiem zy to dobry pomysł ale inaczej nie umiem


(Grzegorz Olszewski) #6

Hm, ale po czym poznajesz, czy zmieniono czy nie? I właściwie co zmieniono?

Ogólnie pomysł nie jest zły, o ile chcesz zawsze zapisywać zmiany w bazie. Bo jeśli ktoś w połowie odliczania wyłączy stronę, to odliczanie się nie skończy, ale zmiany w bazie już zapisałeś.

No, masz właśnie świetną okazję żeby się nauczyć :wink:


(slepciu) #7

Nieskromnie polecę swoje wpisy na blogi:


(Konradnie1) #8
<?php 

if(empty($_GET['akcja']))

{

echo"

| $nazwa | Ataków: $i | Mozliwosc ucieczki: 100% | $poziom.png | Atakuj! |
"; } else { $przeciwnik=$_GET['przeciwnik']; $czas=time(); $koniec=$czas + 0; $pozostalo=$koniec-$czas; if($koniec$czas) { $los=rand(1, 100); $wynik=($los+$spryt+$int)/3; if($wynik15) { $info="Napad na $przeciwnik zakonczyl sie powodzeniem"; } else { $info="Napad na $przeciwnik zakonczyl sie porazką"; } } else { echo"Blad"; } echo""; } ?[/code]

Wymyśliłem coś takiego.

Czy to zabezpiecza przed zapisaniem bez odliczenie??

(Wiem ze nie ale chodzi mi o to że jak nie skonczy się 1 odliczanie to 2 raz nie zaktualizuje do bazy)

-- Dodane 23.08.2012 (Cz) 20:03 --

A i koniec odliczania jest zapisywany w bazie i pobierany tylko to sprawdzałem na localhoscie czy działa i dlatego jest tak