Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 21 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok NapísalOffline : 28.09.2009 14:51

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 :shock: )
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);
  }
}


Offline

Čestný člen
Čestný člen
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 28.09.2009 14:56

Absolutne nechapem. Nemozes volat getAnswer(nieco,nieco), kedze neskor sa pracuje s tretim parametrom.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 28.09.2009 14:59

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


Offline

Čestný člen
Čestný člen
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 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.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 28.09.2009 15:20

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);
}


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 28.09.2009 17:02

ja sa znovu ospravedlnujem... pri mazani riadku som zrusil aj bodkociarku


Offline

Čestný člen
Čestný člen
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 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.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 28.09.2009 17:49

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 :D .

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
}


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0
Príspevok NapísalOffline : 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.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 02.10.2009 15:34

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?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 04.10.2009 23:23

este som narazil na takyto problem - neodoslem viac ako 500 znakov ...
je tato tema uz rozoberana tu http://www.pcforum.sk/dlzka-premennej-vt67032.html ale som z toho jelen a vobec nevidim kde je problem


Offline

Čestný člen
Čestný člen
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 07.10.2009 14:49

Odosielaj data POST metodou, nie GET.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 07.10.2009 15:20

ved ten script odosiela cez post nie?
a schvalne som skusil vlozit 500 znakov a odoslalo 502 uz nie a potrebujem cca700


Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 07.10.2009 15:36

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
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 07.10.2009 15:42

25M


Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 07.10.2009 16:20

25 mega... to je priblizne 500 znakov nie? :D

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
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 07.10.2009 18:30

--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");


Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 07.10.2009 19:53

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
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 07.10.2009 20:44

skontrolovane $dotaz je v poriadku ale nefunguje


Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc XMLHttpRequestObjekt RETURN

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 08.10.2009 9:53

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
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 723
Témy: 81
Príspevok Napísal autor témyOffline : 08.10.2009 10:07

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';



Odpovedať na tému [ Príspevkov: 21 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. Obchod Tenis Return

v Obchody, reklamácie a právo

2

750

03.07.2010 13:30

petKO Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. return Unexpected token

v JavaScript, VBScript, Ajax

2

592

25.02.2012 18:45

iop Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. curl return html

v PHP, ASP

4

407

16.10.2011 16:26

Dawn Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Funkcia return vysledok;

v Assembler, C, C++, Pascal, Java

2

344

25.10.2014 10:37

dany2281995 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. c++ main return exception

v Assembler, C, C++, Pascal, Java

4

405

12.07.2012 12:43

HT Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. RETURN TO CASTLE WOLFENSTEIN

v Počítačové hry

18

1461

18.09.2006 19:20

Harlequin Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prepisanie Return-Path v Postfixe

v Operačné systémy Unix a Linux

0

475

17.09.2016 12:31

JanoF Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. return stringu po ajaxovom calle

v JavaScript, VBScript, Ajax

7

343

10.06.2014 22:57

hatto13 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. return confirm() pred jQuery.load()

v JavaScript, VBScript, Ajax

2

453

13.10.2010 15:42

emer Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Android: AlertDialog - ako počkať na return?

v Android, iOS, Windows Phone (Mobile)

1

2244

17.07.2017 11:22

mackooo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Return to castle wolfenstein problem z grafikou

v Počítačové hry

4

774

15.06.2008 20:23

Daron Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. 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 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc pomoc prosim nefunguje internet

v Ovládače

7

1129

09.09.2017 20:37

Smith Wesson Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. 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 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc

v ATI/AMD grafické karty

3

699

04.03.2008 15:00

Mir Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pomoc

v Operačné systémy Microsoft

3

627

29.12.2007 18:42

Dzimbo Zobrazenie posledných príspevkov


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

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra