| | |
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Autor | Správa |
---|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
mam takyto script ktory mi bezproblemu funguje v pripade ze odpoved poslem do dalsej funkcie chcem aby my dal data do x=getAnswer(nieco,nieco) lenze ked zmazem callback funkciu a nahradim ju return vrati UNDEFINED(js ajax neovladam )
Kód: function getAnswer(url, data, callbackFunkce) { var XMLHttpRequestObjekt = false;
if (window.XMLHttpRequest) { XMLHttpRequestObjekt = new XMLHttpRequest(); } else if (window.ActiveXObject) { XMLHttpRequestObjekt = new ActiveXObject("Microsoft.XMLHTTP"); }
if(XMLHttpRequestObjekt) { XMLHttpRequestObjekt.open("POST", url); XMLHttpRequestObjekt.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
XMLHttpRequestObjekt.onreadystatechange = function() { if (XMLHttpRequestObjekt.readyState == 4 && XMLHttpRequestObjekt.status == 200) { callbackFunkce(XMLHttpRequestObjekt.responseText); delete XMLHttpRequestObjekt; XMLHttpRequestObjekt = null; } }
XMLHttpRequestObjekt.send(data); } }
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 28.09.2009 14:56 | |
|
Absolutne nechapem. Nemozes volat getAnswer(nieco,nieco), kedze neskor sa pracuje s tretim parametrom.
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
ide mi o prerobenie funkcie a vynechanie tretieho param. napr funkcia function getAnswerHere(url, data), lenze skusal som return XMLHttpRequestObjekt.responseText; (:( metoda plug and play) a vysledok bol UNDEFINED
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 28.09.2009 15:08 | |
|
Tak z deklaracie fcie vynechaj ten treti parameter
Kód: function getAnswer(url, data) Dalej zmaz ten riadok, v ktorom 3.parameter pouzivas: Kód: callbackFunkce(XMLHttpRequestObjekt.responseText);
A mozes si to prerabat. S responseText-om pracuj len v tej vetve if readyState==4 atd. Lepsie by bolo, keby si hodil uplne cely kod, lebo neviem, ako to prerabas a ako tu fciu volas. Pripadne daj odkaz na zivu ukazku.
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
nemam to na webe takze takto mi to funguje
Kód: <script type="text/javascript" src="ajaxScripts.js"></script>--->tu je ta funkcia getAnswer . . . <script> function kartaKopa(){ getAnswer('farao.php', 'dajkartu=1', kartaKopa2);//vrati img pre kopu } function kartaKopa2(text){ document.getElementById('kopa').innerHTML = (text);//zobrazi na kope } . . . </script> . . <div id="kopa"></div> . .
lenze volam tu funkciu viackrat z inymi parametrami a zacina sa mi riadne pliest kod a prestavam sa vyznat v algoritme ked musim skakat z jednej funct do druhej atd. Ani zmazanie riadku nepomohlo , prva vec co ma napadla prepisat ho tym return a vysledok rovnaky chcel by som to spojazdnit takto Kód: function kartaKopa(){ var ans=getAnswerHere('farao.php', 'dajkartu=1');//vrati img pre kopu document.getElementById('kopa').innerHTML = (ans); }
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
ja sa znovu ospravedlnujem... pri mazani riadku som zrusil aj bodkociarku
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 28.09.2009 17:45 | |
|
Kód: function getAnswer(url, data) { var XMLHttpRequestObjekt = false;
if (window.XMLHttpRequest) { XMLHttpRequestObjekt = new XMLHttpRequest(); } else if (window.ActiveXObject) { XMLHttpRequestObjekt = new ActiveXObject("Microsoft.XMLHTTP"); }
if(XMLHttpRequestObjekt) { XMLHttpRequestObjekt.open("POST", url); XMLHttpRequestObjekt.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
XMLHttpRequestObjekt.onreadystatechange = function() { if (XMLHttpRequestObjekt.readyState == 4 && XMLHttpRequestObjekt.status == 200) { return XMLHttpRequestObjekt.responseText; } } XMLHttpRequestObjekt.send(data);
} } S tou bodkociarkou nechapem ako si to myslel, v JS su bodkociarky na koncoch riadkov nepovinne.
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
dakujem ti velmi pekne, som porovnaval zalohu s pracovnou verziou a na localhoste som mal pustenu zalohu a pisal som do toho prac. suboru takze mi vsetko chvilku fungovalo .
edit ale teraz mi to tiez nefunguje vypisuje undefined volam to takto (samozrejme AJAXfunkciu som aj premenoval na getAnswerHere) Kód: function kartaKopa(){ var KnK = getAnswerHere('farao.php', 'dajkartu=1');//vrati img pre kopu document.getElementById('kopa').innerHTML = (KnK);//zobrazi na kope }
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 02.10.2009 15:30 | |
|
XMLHttpRequest.send je asynchrónna funkcia. Keď ju zavoláš, ovládanie sa vráti okamžite do tej tvojej funkcie getAnswer a tá funkcia sa hneď ukončí (v takom prípade tam ty ale nemáš odpovedajúce return, takže návratová hodnota je nedefinovaná).
Neskôr, keď príde odpoveď, tak sa tam síce použije return, ale na ten výsledok už nikto nečaká.
Teda ak tam naozaj nechceš použiť callback a ak vždy tú návratovú hodnotu dávaš cez innerHTML do nejakého elementu, tak tej funkcii môžeš dať ako parameter id toho elementu a to nastavenie urobíš v tom onreadystatechange.
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
nie, ta funkcia ktorou volam getAnswerHere(), ma dalsich niekolko krokov a je nutne aby sa spustali postupne,
popripade menej elegantne riesenie ma napadlo...pojde to aj cez vnorene funkcie?
tj
funkcia1()
getAnswer(daco,daco,funcia2)
funkcia2()
getAnswer(daco,daco,funcia3)
funkcia3()
daco
}
}
}
? a zachova sa postupnost?
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 | |
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 07.10.2009 14:49 | |
|
Odosielaj data POST metodou, nie GET.
|
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
ved ten script odosiela cez post nie?
a schvalne som skusil vlozit 500 znakov a odoslalo 502 uz nie a potrebujem cca700
|
|
Registrovaný: 29.10.07 Prihlásený: 27.10.23 Príspevky: 1395 Témy: 30 Bydlisko: Bratislava |
Skus skontrolovat post_max_size v phpinfo();
_________________ PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME Mobil: Xiaomi POCO F2 PRO |
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 | |
Registrovaný: 29.10.07 Prihlásený: 27.10.23 Príspevky: 1395 Témy: 30 Bydlisko: Bratislava |
25 mega... to je priblizne 500 znakov nie?
Ok, vazne... orezava ti len poslednu hodnotu, alebo vsetky?
Co ak tam das 2 s dlzkou 700 bytov?
Z prvej odosle len 500 a druha na server vobec nepride, alebo dojdu obe orezane na 500?
_________________ PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME Mobil: Xiaomi POCO F2 PRO |
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
--posielam to do db a jednoducho nevlozi zapis
aha mea culpa skontroloval som echo a postom hodnota prejde len do db sa neulozi cize nieje chyba v ajaxe ale daka ina zahada premna to sposobuje
pritom mam standardnu sql poziadavku a stlpec ma povolenych 1024znakov
$dotaz=("UPDATE indexus SET $thing=('$msg') WHERE lang=$lang");
|
|
Registrovaný: 29.10.07 Prihlásený: 27.10.23 Príspevky: 1395 Témy: 30 Bydlisko: Bratislava |
daj si zato este echo $dotaz nech vies na 100% aky prikaz databaze posielas...
_________________ PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME Mobil: Xiaomi POCO F2 PRO |
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
skontrolovane $dotaz je v poriadku ale nefunguje
|
|
Registrovaný: 29.10.07 Prihlásený: 27.10.23 Príspevky: 1395 Témy: 30 Bydlisko: Bratislava |
urcite si nieco prehliadol.
skus ten dotaz spustit cez phpMyAdmina, alebo cez nieco podobne, tam ti lepsie vypise chybu.
PRavdepodobne updatujes polozu ktora ma dlzku len 500 znakov
_________________ PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME Mobil: Xiaomi POCO F2 PRO |
|
Registrovaný: 30.04.09 Prihlásený: 11.02.10 Príspevky: 723 Témy: 81 |
nie este vcera som zvecsil dlzku na varchar(1516)
a pred odoslanim som si dal echo
UPDATE indexus SET dressSmsg=('toto je update ...cez 500 char...about-the-universe mixture') WHERE lang=0
pokial je tam menej ako 500 tak sa updatne
Kód: -- -- Štruktúra tabuľky pre tabuľku `indexus` --
CREATE TABLE IF NOT EXISTS `indexus` ( `lang` int(1) NOT NULL, `indexSmsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL COMMENT 'short message(up right)', `indexMsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL COMMENT 'message (upright popup)', `bagsSmsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `bagsMsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `dressSmsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `dressMsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `otherSmsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `otherMsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `contactsSmsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, `contactsMsg` varchar(1516) COLLATE utf8_slovak_ci NOT NULL, PRIMARY KEY (`lang`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_slovak_ci COMMENT='table with index messages';
|
|
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Obchod Tenis Return v Obchody, reklamácie a právo | 2 | 750 | 03.07.2010 13:30 petKO | | return Unexpected token v JavaScript, VBScript, Ajax | 2 | 592 | 25.02.2012 18:45 iop | | curl return html v PHP, ASP | 4 | 407 | 16.10.2011 16:26 Dawn | | Funkcia return vysledok; v Assembler, C, C++, Pascal, Java | 2 | 344 | 25.10.2014 10:37 dany2281995 | | c++ main return exception v Assembler, C, C++, Pascal, Java | 4 | 405 | 12.07.2012 12:43 HT | | RETURN TO CASTLE WOLFENSTEIN v Počítačové hry | 18 | 1461 | 18.09.2006 19:20 Harlequin | | Prepisanie Return-Path v Postfixe v Operačné systémy Unix a Linux | 0 | 475 | 17.09.2016 12:31 JanoF | | return stringu po ajaxovom calle v JavaScript, VBScript, Ajax | 7 | 343 | 10.06.2014 22:57 hatto13 | | return confirm() pred jQuery.load() v JavaScript, VBScript, Ajax | 2 | 453 | 13.10.2010 15:42 emer | | Android: AlertDialog - ako počkať na return? v Android, iOS, Windows Phone (Mobile) | 1 | 2244 | 17.07.2017 11:22 mackooo | | Return to castle wolfenstein problem z grafikou v Počítačové hry | 4 | 774 | 15.06.2008 20:23 Daron | | Ebay - uznali reklamaciu, dali mi return shipping label, ako je to s postovnym? v Obchody, reklamácie a právo | 9 | 2125 | 29.03.2016 0:48 raf | | pomoc pomoc prosim nefunguje internet v Ovládače | 7 | 1129 | 09.09.2017 20:37 Smith Wesson | | Pomoc pri pomoc pri skladaní PC - od 1 500 do 1 800 Eur (rozlíšenie 1440p) v PC zostavy | 13 | 795 | 28.09.2023 20:23 johny314 | | pomoc v ATI/AMD grafické karty | 3 | 699 | 04.03.2008 15:00 Mir | | Pomoc v Operačné systémy Microsoft | 3 | 627 | 29.12.2007 18:42 Dzimbo |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|