Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem ze wstawnieniem czytnika RSS.
Forum PHP.pl > Forum > PHP
kibicujmy
Witam, moja strona to www.kibicujmy.net. (php/smarty/css) pod menu 'testtest' wstawiłem darmowy skrypt z ajaxa wczytujący wiadomości RSS na moją stronę. Coś jest jednak nie tak i gdy wybieram dany kanał i klikam wczytaj, zostaję przeniesiony na stronę główną... Jest mi ktoś w stanie pomóc?questionmark.gif
tomaszdurka
Problem:
Już dawno nie programowałem, ale o ile pamiętam to requesty Ajax'owe mogą dotyczyć tylko twojego serwera (mniej więcej przez xss - cross-site-scripting).
Jeżeli próbujesz pobrać dane z innego serwera przez XMLHTTP to ci sie nie uda (browser blokuje - security)

Najprostsze rozwiązanie:
Musisz stworzyć skrypt PHP na twoim serwerze pobierający dane RSS i potem odwołać się do tego skryptu przez AJAX z klienta (innymi słowy stworzyć pewnego rodzaju serwer proxy).

Szczerze mówiąc nie wiem dokładnie czy to jest twój problem, bo trochę mało informacji podałeś, ale na pierwszy rzut oka to będzie to.

Pozdro,
Tomasz
kibicujmy
Hmmm, nie wiem za bardzo o co chodzi, jestem początkującym webmasterem winksmiley.jpg Ale wydaje mi się, że rozwiązanie może być prostsze... Postaram się wytłumaczyć to jeszcze raz.

Czytnik RSS ma kilka plików podzielonych na odpowiednie katalogi typu include/class/style/ itp. Pliki te uploadowałem zgodnie z katalogami na mój serwer. Jako, że 'strona główna' czytnika RSS nazywa się index.php, a moja strona ma już oczywiście plik o takiej nazwie, więc utworzyłem oddzielny katalog i uploadowałem sam index.php do rss/index.php. Oczywiście także na każdej podstronie, w której znajduje się jakieś odniesienie do pliku index.php również zmieniłem ścieżkę na rss/index.php

Pozostała sprawa 'przekliknięcia' z menu głównego mojej strony (dla przypomnienia www.kibicujmy.net) tak, aby rssy wyświetlały się w odpowiednim miejscu. Nazwałem to testowe.php oraz testowe.tpl (template). Mój plik testowe.tpl przedstawia się następująco.:

{include file='header.tpl'}
{include_php file="rss/index.php"}
{include file='footer.tpl'}

Teraz jeżeli klikam w głównym menu przycisk 'test' (docelowo RSS) wyświetla mi się teoretycznie wszystko OK. Rozwijane menu z kanałami RSS do wyboru, jednak po kliknięciu 'wczytaj' zostaję przeniesiony na stronę główną...
tomaszdurka
Nawet nie sprawdzałem nic ostatnio, tylko ten opis o zew. skrypcie Ajax mnie tak nakierował.
Rozumiem że skrypt jest dostępny tutaj: http://kibicujmy.net/testowe.php


Zmień w pliku rss/index.php lub gdziekolwiek jest zdefiniowany formularz atrybut action:

  1. <form action="index.php" method="post" ENCTYPE="multipart/form-data">

na
  1. <form action="" method="post" ENCTYPE="multipart/form-data">
  2. lub
  3. <form action="testowe.php" method="post" ENCTYPE="multipart/form-data">



(z tego co widzę ten skrypt nie korzysta w ogóle z AJAXa)

Pozdrawiam,
Tomasz

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.