[ Príspevkov: 8 ] 
AutorSpráva
Offline

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

Registrovaný: 12.05.08
Prihlásený: 28.12.13
Príspevky: 117
Témy: 29 | 29
NapísalOffline : 26.03.2010 20:57 | Option value

Ahojte,

mam nasledovny kod:

...
Kód:
   <form name="rssform" onSubmit="getRSS(); return false;">
      <select name="rssurl">
         <option value="test.rss" selected>Test</option>
         <option value="http://www.xy.sk/test.rss/">Test2</option>
       </select>
      <input type="submit" value="načítaj rss" />
   </form>


Otazka znie..., ked si zvolim test a teda subor test.rss mam lokalne v sieti, vsetko je ok. Akonahle chcem vsak nacitat ten isty subor, ale cez zadanie externej celkovej adresy, neudeje sa tak. Otazka, co je v casti:
Kód:
<option value="http://www.xy.sk/test.rss/">Test2</option>


zle? Ako odkazat na externy subor?
Dik!

| Kody vkladaj do znacky [code]. Ďuri


Offline

Čestný člen
Čestný člen
Option value

Registrovaný: 11.08.07
Príspevky: 4062
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 26.03.2010 21:01 | Option value

Daj odkaz na zivu ukazku alebo aspon predpis fcie getRSS().


Offline

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

Registrovaný: 12.05.08
Prihlásený: 28.12.13
Príspevky: 117
Témy: 29 | 29
Napísal autor témyOffline : 26.03.2010 21:06 | Option value

posielam kod, lebo pri zivej ukazke proste externe rss nenacita, len ak si ho ulozim na lokalny disk, resp. do adresara webu...:

Kód:
   <form name="rssform" onSubmit="getRSS(); return false;">
      <select name="rssurl">
        <option value="XY.rss" selected>RSS1</option>
        <option value="http://www.web.sk/XY.rss/">RSS2</option>
       </select>
     <input type="submit" value="načítaj rss" />
</form>

   <div class="rss" id="chan">
      <div id="chan_title"></div>
      <div id="chan_link"></div>
      <div id="chan_description"></div>
      <a id="chan_image_link" href=""></a>
      <div id="chan_items"></div>
      <div id="chan_pubDate"></div>
      <div id="chan_copyright"></div>
   </div>


system teda funguje cez jump menu, vyberiem prvu polozku, nacita sa prve rss, ak druhu, tak druhe. Teraz som len pre ilustraciu zadefinoval nacitanie jedno interne a druhe cez externy odkaz. Pretoze ak chcem ukazat rss z druheho webu, tak je zbytocne si to ukladat na vlastny web...

no a este ta funkcia:

Kód:
function getRSS()
{
//call the right constructor for the browser being used
if (window.ActiveXObject)
xhr = new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
xhr = new XMLHttpRequest();
else
alert("not supported");

//prepare the xmlhttprequest object
xhr.open("GET",document.rssform.rssurl.value,true);
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("Pragma", "no-cache");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4)
{
if (xhr.status == 200)
{
if (xhr.responseText != null)
processRSS(xhr.responseXML);
else
{
alert("Failed to receive RSS file from the server - file not found.");
return false;
}
}
else
alert("Error code " + xhr.status + " received: " + xhr.statusText);
}
}

//send the request
xhr.send(null);
}


| Kod uzatvaras pomocou [/code]. Mas tu aj tlacitko Nahlad, takze si mozes vyskusat, ci si BBKody pouzil spravne. Ďuri
| Nepis viac prispevkov za sebou, pouzivaj tlacitko Uprav. Ďuri


Offline

Čestný člen
Čestný člen
Option value

Registrovaný: 11.08.07
Príspevky: 4062
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 27.03.2010 9:26 | Option value

Problem je ten, ze Ajaxom sa nemozes spajat s cudzou domenou.


Offline

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

Registrovaný: 12.05.08
Prihlásený: 28.12.13
Príspevky: 117
Témy: 29 | 29
Napísal autor témyOffline : 28.03.2010 13:15 | Option value

Ďuri píše:
Problem je ten, ze Ajaxom sa nemozes spajat s cudzou domenou.


Dik za info. Ako to potom vyriesit? Resp. ako formou stiahnut rss externeho webu do svojej lokality, aby sa to dialo automaticky?


Offline

Čestný člen
Čestný člen
Option value

Registrovaný: 11.08.07
Príspevky: 4062
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 28.03.2010 13:34 | Option value

PHPckom (curl, file_get_contents, wget). Pripadne by si mohol pouzivatela iba jednoducho presmerovat pomocou document.location, ci to nie je dobre?
Este k tomu tvojmu JS kodu mala poznamka - odporucam vzdy najprv testovat podporu pre standardne vlastnosti a potom pre tie propertialne, tzn. najprv skontroluj XMLHttpRequest a potom ActiveXObject.


Offline

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

Registrovaný: 12.05.08
Prihlásený: 28.12.13
Príspevky: 117
Témy: 29 | 29
Napísal autor témyOffline : 28.03.2010 18:28 | Option value

Ďuri píše:
PHPckom (curl, file_get_contents, wget). Pripadne by si mohol pouzivatela iba jednoducho presmerovat pomocou document.location, ci to nie je dobre?
Este k tomu tvojmu JS kodu mala poznamka - odporucam vzdy najprv testovat podporu pre standardne vlastnosti a potom pre tie propertialne, tzn. najprv skontroluj XMLHttpRequest a potom ActiveXObject.


Ako presne si to myslel s tym presmerovanim pomocou document.location? Vedel by si mi to bližšie prosím vysvetliť?

Druhej poznamke celkom nerozumiem? Nie som 100% odbornik, co si tym chcel povedat?
P.


Offline

Čestný člen
Čestný člen
Option value

Registrovaný: 11.08.07
Príspevky: 4062
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 28.03.2010 19:22 | Option value

Myslel som, ze ti staci, aby sa pouzivatel dostal na konkretny rss subor, co by sa dalo vyriesit jednoduchym presmerovanim. Ale pozeram, ze chces s RSSkom dalej pracovat (mas tam nejaku fciu processRSS), takze je moja rada irelevantna. Sprav to tak, ze ak bude adresa zacinat na http://
Kód:
if (document.rssform.rssurl.value.match(/^http:\/\//)
...tak budes nacitavat nejaky tvoj interny subor, uvediem priklad:
Kód:
xhr.open("GET","subor-pre-ziskanie-cudzieho-rss.php?adresa="+encodeURIComponent(document.rssform.rssurl.value),true);
Nasledne sa v subore subor-pre-ziskanie-cudzieho-rss.php pokusis stiahnut a zobrazit subor $_GET['adresa'], to by islo (ak vsetko dobre pojde) aj takto:
Kód:
<?php
header('content-type: application/xml');
//POZOR! $_GET['adresa'] treba osetrit, inak sa ti hocikto moze hrabat v skriptoch. Minimalne skontroluj, ci sa zacina na http://.
readfile($_GET['adresa']);
?>
...a malo by to ist.
Inak pre Ajax medzi domenami by bolo mozne pouzit XDomainRequest, ale jednak to nepodporuju vsetky prehliadace, a jednak tam musi byt aj nejake povolenie zo strany servera, ktory volas, cize nepouzitelne.
Co sa tyka mojej druhej poznamky - je taka zasada, ze v prvom rade by mal prehliadac pouzivat standardne metody, a az ak nie su dostupne, tak tie propertialne. V tvojom kode napriklad Explorer 7 pouzije nestandardny ActiveXObject miesto XMLHttpRequestu, aj ked ma podporu pre oba. Konkretne v tvojom kode by to nemalo nijak vadit, kedze neviem o ziadnej nekompatibilite medzi XMLHttpRequest a XMLHTTP cez ActiveX, ale je to dobry zvyk a mozno ti to niekedy pomoze. Takze takto:
Kód:
if (window.XMLHttpRequest)
xhr = new XMLHttpRequest();
else if (window.ActiveXObject)
xhr = new ActiveXObject("Microsoft.XMLHTTP");
else
alert("not supported");

Jo a este jedna poznamka - Linuxovy prehliadac Konqueror nepodporuje XML a teda ani responseXML. Je teda dobre upovedomit pouzivatelov, ze nieco nie je dobre, inak sa budu cudovat, ze klikaju a nic sa nedeje.
Kód:
if (!xhr.responseXML) { alert('Trikrat hanba vasmu prehliadacu'); }


 [ Príspevkov: 8 ] 


Option value



Podobné témy

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

OPTION

v PHP, ASP

2

346

05.02.2008 14:38

max-m

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

Gamepad option ?

v Externé zariadenia

10

897

14.01.2011 22:39

jokerit68

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

Select option

v HTML, XHTML, XML, CSS

5

250

06.06.2017 10:12

hatto13

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

SELECT OPTION

v HTML, XHTML, XML, CSS

3

395

06.03.2009 14:34

Ďuri

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

linky v select - option

v JavaScript, VBScript, Ajax

3

400

01.07.2009 21:38

neopagan

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

select option a php

v PHP, ASP

9

609

05.03.2008 22:16

shaggy

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

mousemove event pre html option

v JavaScript, VBScript, Ajax

5

347

07.03.2012 22:17

phodinux

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

Select a option pomocou JavaScriptu

v JavaScript, VBScript, Ajax

8

515

28.12.2008 23:12

blackman545

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

orange option 3g modem ovladac???

v Ovládače

1

2399

07.10.2008 17:29

kolci

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

textarea value

v HTML, XHTML, XML, CSS

5

308

26.10.2009 18:37

pilná lama glama

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

vyprázdnenie value

v JavaScript, VBScript, Ajax

13

418

30.07.2009 9:30

Draex

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

P: Option 3G/EDGE PCMCIA modem

v Predám

0

190

16.02.2011 1:47

danoon

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

odoslanie button value

v JavaScript, VBScript, Ajax

3

427

18.09.2009 14:02

pilná lama glama

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

SB Live Value

v Zvuk

4

719

01.10.2005 10:11

Lukas[CZE]

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

MySQL default value

v Databázy

3

453

30.05.2010 18:05

DARSON

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

zmena value v textfield

v JavaScript, VBScript, Ajax

10

461

04.10.2009 21:31

pilná lama glama



© 2005 - 2018 PCforum, edited by JanoF