| Autor | Zpráva | ||
|---|---|---|---|
| Andree Profil |
Dobrý den,
potřeboval bych poradit jak nakombinovat javascript s php. Mělo by to fungovat tak, že když v seznamu vyberu nějaký výběr, tak bez znovu načtení stránky by měl z databaze přijít nějaký text. kod: <form id="formular" name="formular" action="#" method="POST">
<fieldset title="mesto">
<legend>vyber mest</legend>
<label>vyber mesto</label>
<select id="vyber">
<option selected>....</option>
<option>Praha</option>
<option>Brno</option>
<option>Ostrava</option>
<option>Olomouc</option>
</select>
<label>vysledek</label>
<input type="text" name="vysledek" />
<button type="submit">send</button>
</fieldset>
</form>
<script type="text/javascript">
document.formular.vyber.onchange = function () {
var id = document.formular.vyber.selectedIndex;
var vyber = document.formular.vyber[id].value;
document.formular.vysledek.value = vyber + <?php echo 'nejaky text, ktery prijde z databaze' ?>;
}
</script> |
||
| xROAL Profil |
AJAX
Je tam jednoduchý a zrozumiteľný tutorial, prejdi si to celé a myslím že nebudeš mať problém. |
||
| Andree Profil |
#3 · Zasláno: 8. 1. 2014, 18:04:14
Jsi hodný, že se mě snažíš dotlačit k novému "jazyku". Časem se na ajax podívám, ale momentálně potřebuji vyřešit tuto maličkost přes php a javascript. Už se s tim štvu celej týden. Tak bych to nerad vzdal a řešil to přes jiný "jazyk".
|
||
| ninja Profil |
#4 · Zasláno: 8. 1. 2014, 18:08:44
Andree: Zkuste na ten link alespoň kliknout, případně si dát AJAX do vyhledávače. Žádný jiný jazyk to není a jiná cesta není.
|
||
| juriad Profil |
#5 · Zasláno: 8. 1. 2014, 18:09:05
Javascript nemůže přímo spouštět PHP. PHP se vykoná vždy dříve než javascript (běží na jiném počítači).
|
||
| Alphard Profil |
To není nový jazyk, jen technika spojující známé věci. Určité alternativy jsou uvedeny na Nejčastější potíže s PHP (FAQ) » Jak přenést proměnnou z javascriptu do PHP, ale vzhledem k tomu, že potřebujete i přijímat dat, zřejmě skončíte opět u AJAXu (není jediný možný, ale existuje pro něj nejvíc ukázek, což ho dělá nejsnadnějším).
|
||
| xROAL Profil |
#7 · Zasláno: 8. 1. 2014, 19:05:14
Andree:
„momentálně potřebuji vyřešit tuto maličkost přes php a javascript“ AJAX vlastne je JavaScript. Ide o načítanie scriptu/súboru na pozadí, výsledok tohto scriptu (resp. obsah súboru, po spracovaní serverom) sa vráti ako odpoveď do JavaScriptu a s týmto môžeš ďalej na aktuálnej stránke pracovať. |
||
| Andree Profil |
#8 · Zasláno: 9. 1. 2014, 12:30:52
Moc vám všem děkuji. Měli jste pravdu. zkoušel jsem to vyřešit přes skryty formulář v pozadí, ale moc to nefungovalo.
Nakonec jsem rezignoval a podíval se na ajax a vytvořil jsem to nějak takhle. document.formular.vyber.onchange = function () {
var myRequest;
var id = document.formular.vyber.selectedIndex;
var vyber = document.formular.vyber[id].value;
if (window.XMLHttpRequest) {
myRequest = new XMLHttpRequest();
}else if (window.ActiveXObject) {
myRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
myRequest.onreadystatechange = function () {
if (myRequest.readyState == 4) {
var p = document.createElement("p");
var t = document.createTextNode(myRequest.responseText);
p.appendChild(t);
document.getElementById("box").appendChild(p);
}
}
myRequest.open("GET", vyber+".php", true);
myRequest.send(null);
} |
||
|
Časová prodleva: 13 let
|
|||
0