Diskuze: Načítání PHP kódu pomocí ajaxu
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.


Podívej se třeba sem: http://api.jquery.com/jquery.ajax/, nejvíc tě asi budou zajímat příklady.
Pro našeptávač používám toto:
function showResult(str) {
if (str.length==0) {
document.getElementById("naseptavac").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (this.readyState==4 && this.status==200) {
document.getElementById("naseptavac").innerHTML=this.responseText;
}
}
xmlhttp.open("GET","https://katalog.mat-internet.eu/naseptavac.php?q="+str,true);
xmlhttp.send();
}
Nešlo by něco podobného? 
Snad je to kompletni. Kopiroval jsem jen tu funkcni cast. Musi se to spoustet pres server, ja tam mam localhost.
sender_receive.php
<?php
$text = isset($_POST['text']) ? $_POST['text'] : '';
echo 'Poslal jsi text="'.$text.'"';
?>
sender_send.htm
<form action="" onsubmit="buttSend(); return false;">
<input type="submit">
</form>
<hr>
<div id="info_container"></div>
<hr>
<div id="log_container"></div>
<script src="func-inc.js"></script>
<script src="sender.js"></script>
<script>
var SENDER = new classSender({log:SCREEN.log});
function buttSend()
{
var url, arg, cb;
cb = function(str) {$('info_container').innerHTML = str;};
arg = 'text=Ahoj';
url = 'http://localhost/www/zas3-pokus/sender_receive.php';
SENDER.func.sendPost(url, arg, cb);
}
</script>
sender.js
function classSender(opt)
{
var root = this;
this.req = null;
//this.opt = {};
this.func = {};
this.func.log = null;
this.func.cbRequestReceive = function()
{
root.func.log('cbRequest: Request reading...');
var str = root.req.responseText; // pro text/csv
if (!str)
{
root.func.log('cbRequest: Chyba, prazdna odpoved.');
return;
}
root.func.log('cbRequest: File writing end.');
root.func.cbEnd(str);
}
this.func.cbRequestError = function ()
{
var status_text = '';
//...
SCREEN.func.message('cbRequestError: code=' + root.req.status + '. ' + status_text, 'error');
}
this.func.sendPost = function(path, arg, func_CB)
{
root.func.log('strToUrl: File writing start...');
root.func.cbEnd = isFunction(func_CB) ? func_CB : opt.cbEnd;
root.req = new XMLHttpRequest();
root.req.responseType = 'text'; // pro posilani text/csv
root.req.onload = root.func.cbRequestReceive;
root.req.onerror = root.func.cbRequestError;
root.req.error_path = path;
root.req.open('POST', path, true);
root.req.setRequestHeader('Content-type','application/x-www-form-urlencoded');
root.req.send(arg);
}
this.func.init = function(opt)
{
if (!isObject(opt)) {return;}
root.func.log = isFunction(opt.log) ? function (str) {opt.log('classSender.func.' + str);} : null;
root.func.cbRequest = isFunction(opt.cbRequest) ? opt.cbRequest : root.func.cbRequest;
root.func.cbRequestError = isFunction(opt.cbRequestError) ? opt.cbRequestError : root.func.cbRequestError;
root.func.cbEnd = isFunction(opt.cbEnd) ? opt.cbEnd : null;
}
this.func.init(opt);
}
func-inc.js
function isObject(item) {return typeof(item)=='object' && item!=null;}
function isFunction(item) {return typeof(item)=='function' && item!=null;}
function $(id,win) {var win = win || window; return win.document.getElementById(id);}
function classScreen()
{
var root = this;
this.func = {};
this.log = function (str)
{
if (!$('log_container'))
{alert('log_container err');}
// $('log_container').innerHTML += str; // asc
$('log_container').innerHTML = str + '<br>' + $('log_container').innerHTML; // desc
}
this.func.log = function(str)
{
root.log(str);
}
}
var SCREEN = new classScreen();
Zobrazeno 4 zpráv z 4.