Avatar
John Ronald Reuel Tolkien:21. května 21:27

Zdravím, mám následující kód :

let xhtml=new XMLHttpRequest();
   let jmeno="John";
   window.onload=function()
   {

   xhtml.onreadystatechange=function()
   {
   if (xhtml.readyState==4 && xhtml.status==200)
   {


   document.getElementById("text").innerHTML=this.responseText;
   alert(this.responseText);

   }
  }
   xhtml.open("GET","php.php?s=" + jmeno,true);
   xhtml.send();

   }

V odstavci ['text'] se ale nic nevypíše. V alertu pod ním se to sice vypíše ale v této formě:
<?php

$s=$_REQUEST["s"];

echo $s + "Zdravím tě !";

?>

Kde je problém ? proč to vyhodnocuje php kód jako text ?
Apache mám zapnutého.
Děkuji za odpověď.

Editováno 21. května 21:29
 
Odpovědět 21. května 21:27
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:22. května 7:32

Nevim, zda uplne chapes, o co bezi.
Www prohlizec pracuje s html/css/js kodem a nejakymi dalsimi soubory jako obrazky, napr.
Request nedela nic jineho, nez jakoby otevre novou stranku a jeji text/html/... ulozi do promenne.

'proč to vyhodnocuje php kód jako text ?'
Cili, ta otazka nedava smysl. Server s php vyhodnocuje php jako php. Prohlizec, ktery php nema, php nerozumi, pro nej je to jenom text.

'let xhtml'
To asi neni cisty js. V js se pouziva 'var xhtml'.

Kdyz tu stranku zobrazis zvlast v okne, take vypise php kod? Pokud ano, tak na serveru bud nebezi php nebo mas v php kodu chybu. Pripadne, jeste tam muze byt parazitni navic utf-8 bom znak na zacatk souboru. Jinak, ja bych to pojmenoval jako response.php a ne php.php.
http://tvujserver/php.php?…

https://developer.mozilla.org/…ystatechange

var xhr = new XMLHttpRequest(),
    method = "GET",
    url = "https://developer.mozilla.org/";

xhr.open(method, url, true);
xhr.onreadystatechange = function () {
  if(xhr.readyState === 4 && xhr.status === 200) {
    console.log(xhr.responseText);
  }
};
xhr.send();

Nevim, jak moc by melo fungovat to this. Mozna, pokud pouzivas synchronni request. tady v prikladu kazdopadne jsou pres jmeno objektu.

 
Nahoru Odpovědět 22. května 7:32
Avatar
John Ronald Reuel Tolkien:22. května 14:31

Zatím moc nechápu, teprve se to učím :D

 
Nahoru Odpovědět 22. května 14:31
Avatar
John Ronald Reuel Tolkien:22. května 15:11

Jinak, můj kód je v pořádku, nezáleží jestli je let nebo var - i s let by to byl čistý JS. Request tomu taky nevadí... Co bylo špatně je to, že jsem to neměl uloženo jako php soubor.

Editováno 22. května 15:11
 
Nahoru Odpovědět 22. května 15:11
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:22. května 15:25

Php soubor je plain text.
Pokud stacilo v editoru zmenit ukladani z text (html, csv a pod) do php, pak ti tam ten editor nejspis pridaval prave utf-bom znak. Super, ze se to vyresilo tak snadno :)

 
Nahoru Odpovědět 22. května 15:25
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.