Autor Zpráva
Babemeta
Profil
Zdravím,
mám dotaz jestli jde nějak převést proměnná z php do javascriptu?

2) Když chci pomocí php doplňovat css styly a chtěl bych je mít v externím souboru musím přes include souboru.php?
Beavis
Profil
Babemeta:
var promenna = " <?php echo $promenna; ?>"; // tohle by nějak mělo fungovat 
:-)
2) Ano.
Babemeta
Profil
Díky. A za JS do PHP to bude podobné?

A ještě nevíš nějakej dobrej článek o pracování Javascriptu s databází MySQL?

Edit: A jde používat v JS připojení k databázi přes PHP? Konkrétně na začátku každého souboru dávám automatický include s kontrolami a připojením k db. Musel bych se přes js připojovat znovu?
Beavis
Profil
Babemeta:
JavaScript nejde propojit s MySQL, tuším že si to pleteš s Javou.
Babemeta
Profil
Díky. S JS teprve začínám tak nevím :-). Takže řekněme, že bych chtěl udělat v Javascriptu nějaký příkaz, který se spustí po kliknutí na něco (bez refreshe) a po kliknutí něco zapsat do MySQL tak zase provážu kód s php? A ty proměnný si převedu zase z JS do PHP přesně jak? Díky moc :-)
Beavis
Profil
Babemeta:
Bez refreshe - dá se to řešit přes AJAX / jQuery, pak se to prováže s PHP. (Viz např. Facebook.)
Babemeta
Profil
Ale přes JS by to šlo ne? S dalšími jazyky už se nechci trápit.
Beavis
Profil
Babemeta:
AJAX / jQuery je taková .. řekněme nadstavba JavaScriptu, právě pro takovéto úkony ;-).
Babemeta
Profil
Beavis:
Já měl dojem že by stačilo Onclick nějak provázané s php, ale fakt nevim.
Beavis
Profil
Babemeta:
Ono to přes ten onclick snad i jde, ale AJAX či jQuery jsou od toho, aby tohle zjednodušily :-)
Babemeta
Profil
Beavis:
OK. Tak já si o tom něco nastuduju. Ještě teda poslední dotaz jak se převádí ta proměnná obráceně (JS->PHP)? Díky
Beavis
Profil
Babemeta:
Vypíšeš si jí přes document.write :-).
Babemeta
Profil
Jasný. Takže ověření:
$promenna = "<script>document.write(jspromenna)</script>";
Beavis
Profil
Babemeta:
A co to vyzkoušet? :-)
Babemeta
Profil
OK. Lock
panther
Profil
[#2] Beavis:
var promenna = " <?php echo $promenna; ?>"; // tohle by nějak mělo fungovat
opravdu?
Keeehi
Profil
Babemeta:
Je tu důležitá věc, o které zdá se že nevíš. PHP script se provádí na servru, kdežto JS v prohlížeči! Toto je velmi důležité. Ty zavoláš stránku, server ji zpracuje (provede php kód) a výsledek odešle a dál už se o nic nestará, není možné, aby nějak "doposlal" ještě něco. Pokud od něho něco chceš, budeš muset odeslat další požadavek.

Takže prohlížeč přijme výsledek a jediný script, který má je JS script. Pokud se něco do Javascriptu doplňovalo pomocí PHP, tak už je to doplněné.

převádí ta proměnná obráceně (JS->PHP)?
Jak si to představuješ, tak tak to nejde. Právě Javascript musí znovu kontaktovat server (načte v pozadí nějakou stránku) a s tím co mu vrátí pracuje dál. K tomu novému kontaktování použiješ právě AJAX. Není to žádný nový jazyk, Jen jsou to první písmena z Asynchronous JavaScript and XML.
shaggy
Profil
Beavis:
ale AJAX či jQuery jsou od toho, aby tohle zjednodušily
Prečo všade píšeš AJAX / jQuery? Niekto, kto to nepozná bude hľadať informácie o tom a bude zmätený. Sú to dve absolútne odlišné veci.
Babemeta
Profil
Nebo já přistoupim trošku konkrétněji. Mám šachovnici 5x5 a myslel jsem, že by tam uživatel mohl posouvat figurku z jednoho políčka na druhé. Představoval jsem si to tak, že by se pokaždé změnil údaj x a y souřadnic v mysql a podle toho by se posunula postavička, ale to by stejně nutně musel být proveden refresh stránky. Jak to tedy zkombinovat, pokud nechci refresh stránky po každém posunu a v nejlepším případě zůstat jen u JS a PHP (pak tedy AJAX jak říkate).
shaggy
Profil
Babemeta:
Na toto vôbec nepotrebuješ mysql - urob posun postavičky iba v JS.
Babemeta
Profil
Jak říkám, s JavaScriptem začínám. Kam si pak uložím kde se zrovna postavička nachází tak aby při dalším přihlášením uživatele byla pořád na stejném místě?
Babemeta
Profil
Existuje pro JS nějaká databáze? Nebo není možné mezi jednotlivými spuštěnými skriptu ukládat data?
Keeehi
Profil
Babemeta:
Šlo by to do cookies, nebo AJAXem na server.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: