Diskuze: Ajax, vrácení hodnoty z echa
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 17 zpráv z 17.
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.
Čus,
z hlavy ti neporadím, ale zkus se podívat na funkci done() nebo complete()
nebo tak něco.
Víc podrobností určitě najdeš na http://api.jquery.com/jquery.ajax/.
síce som tvoju otázku nepochopil (skús ju sformulovať syntakticky správne), ale keď chceš získané dáta zo serveru nejako využiť pomocou javascriptu tak vo funkcii $.ajax pridaj riadok "success" : funkcia
$.ajax({
type: 'POST',
url: 'kontrola.php',
data: $(this).serialize()
success: function(data) {
// spracuj data
}
error: function(data) {
// toto sa spustí keď na servery vrátiš napríklad false
}
})
Já používám u pár projektů toto a když chceš pouze výpis, tak to stačí.
$.post('cesta/k/php/souboru', {
data: $(this).serialize(),
function(result) {
//tu jde výsledek z php souboru
});
Nejsem si jist tím data řádkem, jelikož to nepoužívám, ale takhle ti vyhodí, co potřebuješ.
Keď sa pýtaš na php kód tak nechápem prečo si to napísal do fóra s javascriptom, ale nevidím v tvojom kóde problém. Možno skús namiesto echa to vracať cez return.
Keď sa pýtaš na javascript tak na to som ti už odpovedal. V tej funkcii success spracuj tie data, ktoré sú ako parameter tej funkcie. Mohlo by to vyzerať napríklad takto:
success: function(data) {
$("#miesto-pre-obrazok").append(data);
}
Já nevím co dělám zle, je to asi tím že z JS neumím.
S php problém není. Je to tím JS.
Nyní to mám takto:
<form id="userForm">
<input type="hidden" value="<?php echo $result['Web']; ?>" name="kontrola">
<input type='submit' value='Submit' />
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js "></script>
<script>
$(document).ready(function(){
$('#userForm').submit(function(){
$.ajax({
type: 'POST',
url: 'kontrola.php',
data: $(this).serialize()
success: function(data) {
$("#miesto-pre-obrazok").append(data);
}
})
return false;
});
});
</script>
Ale ne jen že to nevypíše to echo z php ale ještě to navíc refreshne stránku a přidá to do url v adresním řádku ještě obsah
<input type="hidden" value="<?php echo $result['Web']; ?>" name="kontrola">
Prosím Vás jak to tedy mám mít správně abych odeslal ten form, bez
refreshe stránky se zpracoval php a ukázal se výsledek z php z určitého
echa podle výsledku.
Děkuji za polopatickou odpověď protože já jsem nyní úplně mimo.
Skús takto
<form id="userForm">
<input type="hidden" value="<?php echo $result['Web']; ?>" name="kontrola">
<input type='submit' value='Submit' />
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js "></script>
<script>
$(document).ready(function(){
$('#userForm').submit(function(event){
event.preventDefault();
$.ajax({
type: 'POST',
url: 'kontrola.php',
data: $(this).serialize()
success: function(data) {
alert(data) // Vypíše data zo serveru do vyskakovacieho okna
}
})
return false;
});
});
</script>
Tak zde je možné zkusit: http://country.funsite.cz/zobraz_link.php?…
Použil jsem přesně to co si mi napsal:
<form id="userForm">
<input type="hidden" value="<?php echo $result['Web']; ?>" name="kontrola">
<input type='submit' value='Submit' />
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js "></script>
<script>
$(document).ready(function(){
$('#userForm').submit(function(event){
event.preventDefault();
$.ajax({
type: 'POST',
url: 'kontrola.php',
data: $(this).serialize()
success: function(data) {
alert(data) // Vypíše data zo serveru do vyskakovacieho okna
}
})
return false;
});
});
</script>
ako to, že nie ... vyzerá to tak, že v php máš nejaký cyklus ktorým vypisuješ albumy a pre každý jeden album vypíšeš aj formulár + skript
a takto to mám ne? Ve formuláři se pak mění jen
<?php echo $result['Web']; ?>
Takže pro každé album je každý formulář jiný. Nevím jak jinak vyřešit aby byl formulář pro každé album jiný.
No veď a to je zle, že to tak máš, veď nebudeš robiť pre každý
formulár jeden skript
Nieje to ideálne ale formulár môžeš mať rôzny pre každé len im daj
rôzne id, a skript urob jeden pre celú stránku.
Inak tá stránka je celá divná, kukni aký pozdrav som ti tam nechal 
Ale to máš problém v php a nie javascriptu, že to vypisuješ 10x ... ani
nechápem prečo vypisuješ skript v php niekde v cykle
Celkovo je to zle ... máš tam SQL Injection aj XSS ešte aj chyby vypisuješ,
keby sa mi chcelo tak sa s tým pobavím viac 
Zobrazeno 17 zpráv z 17.