Diskuze: rozdelenia uzivatelov z db na jednej stranke
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 7 zpráv z 7.
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í PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Tvoje řešení se dá vyřešit za pomoci PHP třeba takto https://www.itnetwork.cz/…dani-stranek
Jednoduše
Pokud si začátečník tak si udělej x souborů a v nich tmp podle požadavku
(jako v seriálu na který jsem odkázal)
Jinak se to dá jednoduše vyřešit pomocí AJAX + API
Ja by som to riešil úplne inak. Buď by som si to linkoval ako get parameter, napr:
<a href="stranka.php?uziv=treneri">TRENERI</a>
Následne by som v kóde zobrazil užívateľov podla parametru.
Alebo by som si vypísal všetkých užívateľov naraz a javascriptovo ich schovával/zobrazoval.
Iframe určite nie, to je podľa mňa rakovina zdarma, lebo obsah samotný už nevieš po načítaní webu meniť, respektívne modifikovať, čo postráca akúkoľvek logiku tvorby webu. Iframe jedine na bannery, reklamy a iné záležitosti. Aspoň podľa mňa.
pokud nechces, aby se po stisknuti tlacitka znovu nacitala cela stranka, tak
bud frameset + 2 framy
nebo pres ajax (treba jquery je na takto jednoduchou stranku idealni)
tady je hruby priklad pro obe reseni:
Frameset reseni:
index.html:
<FRAMESET rows="20%, 80%">
<FRAME name="tlacidla" src="tlacidla.html">
<FRAME name="osoby" src="osoby.php?typ=vsichni">
</FRAMESET>
tlacidla.html:
<a href="osoby.php?typ=treneri" target="osoby">Treneri</a>
<a href="osoby.php?typ=muzi" target="osoby">Muzi</a>
<a href="osoby.php?typ=zeny" target="osoby">Zeny</a>
<a href="osoby.php?typ=vsichni" target="osoby">Vsichni</a>
osoby.php:
<?php
switch($_GET['typ']) {
case 'treneri':
// tady bude kod pro vypsani treneru
echo 'treneri';
break;
case 'muzi':
// tady bude kod pro vypsani muzu
echo 'muzi';
break;
case 'zeny':
// tady bude kod pro vypsani zen
echo 'zeny';
break;
case 'vsichni':
default:
// tady bude kod pro vypsani vsech
echo 'vsichni';
break;
}
?>
jQuery reseni
index.html:
<div>
<a href="#" id="btn_treneri">Treneri</a>
<a href="#" id="btn_muzi">Muzi</a>
<a href="#" id="btn_zeny">Zeny</a>
<a href="#" id="btn_vsichni">Vsichni</a>
</div>
<div id="osoby">
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#btn_treneri').click(function(){
$('#osoby').load('osoby.php?typ=treneri');
});
$('#btn_muzi').click(function(){
$('#osoby').load('osoby.php?typ=muzi');
});
$('#btn_zeny').click(function(){
$('#osoby').load('osoby.php?typ=zeny');
});
});
</script>
osoby.php
<?php
switch($_GET['typ']) {
case 'treneri':
// tady bude kod pro vypsani treneru
echo 'treneri';
break;
case 'muzi':
// tady bude kod pro vypsani muzu
echo 'muzi';
break;
case 'zeny':
// tady bude kod pro vypsani zen
echo 'zeny';
break;
case 'vsichni':
default:
// tady bude kod pro vypsani vsech
echo 'vsichni';
break;
}
?>
Poznamka 1:
mozna bude u frameset reseni potreba do osoby.php pridat nejake to cache prevention, aby se obsah dostal az do prohlizece pri opravdu kazdem stisknuti tlacitka ... nemam s tim az takovou zkusenost
kdyby bylo potreba, tak na zacatek osoby.php pridat jeste toto:
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
Poznamka 2:
jak uz psal Ján Timoranský , u iframe ztracis moznost zasahovat do nej javascriptem ze stranky, ve ktere je zobrazen
u klasickych framu zasahovat lze ... viz treba tady:
https://stackoverflow.com/…g-javascript
Zobrazeno 7 zpráv z 7.