Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
sakunne
HV veteran

liitunud: 15.12.2004
|
15.02.2012 16:47:15
Stringide lahkamine |
|
|
Saan päringule nt sellised vastused:
{"1":{"query": "saare adiste","shortaddress": "Saare","fulladdress": "Põlva maakond, Põlva vald, Adiste küla, Saare", "lest-x": "6446563", "lest-y": "685449", "lat": "58.120991167538", "lon": "27.147987609251", "kat": "61902:001:0212"},
"2":{"query": "saare adiste","shortaddress": "Saare","fulladdress": "Põlva maakond, Põlva vald, Adiste küla, Saare", "lest-x": "6442893", "lest-y": "685352", "lat": "58.088117172745", "lon": "27.143426130261", "kat": "61902:003:0530"}} |
või:
1. Saare [ x:6446563, y:685449 (B:58.120991167538, L:27.147987609251)](Põlva maakond, Põlva vald, Adiste küla, Saare) {61902:001:0212}
2. Saare [ x:6442893, y:685352 (B:58.088117172745, L:27.143426130261)](Põlva maakond, Põlva vald, Adiste küla, Saare) {61902:003:0530} |
Nüüd oleks vaja nendest osised(fulladdress, x ,y, kat jne) eraldi muutujatena kätte saada.
Kas nt javaScriptis v PHP's on olemas selleks mingid vaikimisi vahendid v tuleb asi lahendada jõhkra stringianalüüsiga
Ma ei oska JSON'i päris õieti rakendada
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
Timukas0
HV kasutaja

liitunud: 20.03.2007
|
15.02.2012 16:51:57
|
|
|
Esimese puhul on tegu JSON-iga, selle jaoks nii PHP-s kui JavaScriptis vahendid olemas. Näiteks:
javascript:
|
var responseStr = '{"1":{"query": "saare adiste","shortaddress": "Saare","fulladdress": "Põlva maakond, Põlva vald, Adiste küla, Saare", "lest-x": "6446563", "lest-y": "685449", "lat": "58.120991167538", "lon": "27.147987609251", "kat": "61902:001:0212"}, "2":{"query": "saare adiste","shortaddress": "Saare","fulladdress": "Põlva maakond, Põlva vald, Adiste küla, Saare", "lest-x": "6442893", "lest-y": "685352", "lat": "58.088117172745", "lon": "27.143426130261", "kat": "61902:003:0530"}}'; var response = JSON.parse(responseStr); var address = response[1]['fulladdress'], lestX = response[1]['lest-x'], lestY = response[2]['lest-y'];
|
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
15.02.2012 19:28:59
|
|
|
keevitaja kirjutas: |
erilist keemiat ei tohiks olla! |
Ega olegi asi töötab, kuid üks küsimus veel:
päringule tuleb mitu aadressi(eeltoodud näites 2), kasutan
for (i=1; i<=[vastuste arv]; i++) |
Kuidas ma saan selle "vastuste arv'u" kätte
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
15.02.2012 20:10:08
|
|
|
count($array)
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
Timukas0
HV kasutaja

liitunud: 20.03.2007
|
15.02.2012 21:54:58
|
|
|
JavaScripti puhul see vastus on tegelikult objekt, mitte massiiv, seega võid sellist lahendust kasutada:
javascript:
|
var i; for (i in response) { // response[i] }
|
Kui tõesti vaja kokku lugeda, siis kasuta lisamuutujat, mida tsükli kehas järjest suurendad.
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
15.02.2012 22:11:11
|
|
|
Js on masiivi pikkuse määramine ka võimalik
var m=Array('w', 'e', 'r');
alert(m.length) |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
15.02.2012 22:35:26
|
|
|
Kuidas saada see päring url'i järgi kätte, proovisin 'jqury':
<script type="text/javascript"><!--
$(document).ready(function() {
$('a.lnk').click(function() {
var url = $(this).attr('href');
$('#content').load(url);
return false;
});
});
--></script>
<a href="extern.html" title="Get extern" class="lnk">Get extern</a>
<div id="content">Initial content in test.html</div>
|
See jälle millegipärast väliseid URL'e ei lae (nt. http://neti.ee)
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
15.02.2012 22:46:25
|
|
|
sakunne kirjutas: |
Kuidas saada see päring url'i järgi kätte, proovisin 'jqury':
<script type="text/javascript"><!--
$(document).ready(function() {
$('a.lnk').click(function() {
var url = $(this).attr('href');
$('#content').load(url);
return false;
});
});
--></script>
<a href="extern.html" title="Get extern" class="lnk">Get extern</a>
<div id="content">Initial content in test.html</div>
|
See jälle millegipärast väliseid URL'e ei lae (nt. http://neti.ee) |
AJAX päringute tegemine väljaspoole lehe asukoha domeeni on minu meelest vaikimisi turvakaalutlustel kinni keeratud.
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
15.02.2012 23:15:08
|
|
|
Hmmm ... jama ju, kuida ma selle päringu saan siis?
_________________ Kuna ei pruugi õigel ajal foorumisse sattuda:
SMS: 5051598 [võõraid tel. ei vasta]
Email sakunne@seenior.ee |
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
15.02.2012 23:28:42
|
|
|
mis mõttes? oled kindel, et sa soovid crossdomain ajax requeste teha?
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
15.02.2012 23:34:08
|
|
|
Kuidagi vaja kätte saada ju
_________________ Kuna ei pruugi õigel ajal foorumisse sattuda:
SMS: 5051598 [võõraid tel. ei vasta]
Email sakunne@seenior.ee |
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
napoleon
Unknown virus

liitunud: 08.12.2008
|
16.02.2012 12:35:44
|
|
|
Kui serveri pool PHP-d kasutada saad, siis miks sa seda serveris teha ei taha? Kõige lihtsamal kujul siis midagi sellist:
<?php
readfile('http://www.neti.ee');
?>
|
readfile parameetriks pead andma siis selle URL-i, kust andmeid pärid ja AJAX-ga küsid enda PHP lehte.
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
60 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
16.02.2012 13:46:59
|
|
|
keevitaja kirjutas: |
mis mõttes? oled kindel, et sa soovid crossdomain ajax requeste teha? |
napoleon kirjutas: |
Kui serveri pool PHP-d kasutada saad, siis miks sa seda serveris teha ei taha? ... |
Selles asi ongi, et sellele serverile ligi ei pääse ... Maa-Ameti oma nimelt
PHP'ga sain kätte, a'peab vist ikka AJAX'iga Crossdomain tegema
viimati muutis sakunne 17.02.2012 15:13:35, muudetud 1 kord |
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
napoleon
Unknown virus

liitunud: 08.12.2008
|
16.02.2012 13:57:30
|
|
|
Siis teedki oma serveris näiteks lehe geoportaal.php, mis on midagi sellist
<?php
readfile('http://geoportaal.maaamet.ee/url/ky-aadress.php?out=json&trim=1&aadress='.urlencode($_GET['aadress']));
?>
|
ja AJAX-s pöördud oma rakenduse poole näiteks geoportaal.php?aadress=Tamme
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
60 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
18.02.2012 20:22:53
|
|
|
EDIT:
veel küsimus: kasutan
document.getElementById("valiAdr").innerHTML= ... |
ja
viimasesse tekib päringu vastus, mida oleks vaja JSON parseriga töödelda
tulemuseks tuleb siis:
http://www.therm.ee/_thermnet/kaart/json_test.html
a'seal on JSON kopipasteeritud
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
napoleon
Unknown virus

liitunud: 08.12.2008
|
19.02.2012 13:30:22
|
|
|
Kas sain nüüd valesti aru või küsid tõesti nii elementaarset asja:
kui sul on:
document.getElementById("valiAdr").innerHTML=<mis iganes>;
siis kõige lihtsamal kujul võid asendada:
var sisu=<mis iganes>;
//siin tee muutujaga sisu mis tahad
document.getElementById("valiAdr").innerHTML=sisu;
Muidugi on ka InnerHTML property loetav ehk töötab ka näiteks nii:
var sisu=document.getElementById("valiAdr").innerHTML
//siin tee muutujaga sisu mis tahad
document.getElementById("valiAdr").innerHTML=sisu;
...aga sel moel ei soovitaks asja lahendada
aga seda viimast ei soovita eriti kasutada.
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
60 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
21.02.2012 17:25:03
|
|
|
napoleon kirjutas: |
Kas sain nüüd valesti aru või küsid tõesti nii elementaarset asja:
... |
Nii elementaarset asja ei küsigi ... viga oli hoopis mujal ... ja veel elementaarsem - näpukas
Aga tänud änivei
EDIT:
Baithevei - miks ei soovita sel moel asja laendada
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
napoleon
Unknown virus

liitunud: 08.12.2008
|
21.02.2012 18:18:43
|
|
|
Selleks, et kui topid midagi InnerHTML'i, siis hakkab browser seda parsima ja renderdama, mis mõjub kehvasti jõudlusele. Kui tegemist on pisikese stringijupiga ja sa ei tee seda tüklis, siis pole võibolla väga hullu, aga suurema hulga andmetega võib mõne lahjema masina korralikult kooma tõmmata.
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
60 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
21.02.2012 19:40:26
|
|
|
Achaa hakkab koitma
_________________ Kuna ei pruugi õigel ajal foorumisse sattuda:
SMS: 5051598 [võõraid tel. ei vasta]
Email sakunne@seenior.ee |
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
|