Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
PHP & AJAX - includowanie
#1
Cześć,

w jaki sposób i czy da się w ogóle includować stronę poprzez responseText ajaxa?

Kod:
<?php

    $SubmenuElementActive = $_GET["a"];
    include ('db.php');
    
    $sql = "SELECT * FROM menu_submenu_desc WHERE parent = '".$SubmenuElementActive."'";
    $result = mysql_query($sql);
    
    $row = mysql_fetch_array($result); // bo wynik moze byc tylko 1 (bez while dlatego)
    $responseText = '/submenu/res/'.$row['src'].'.php';
    
    echo '<? include("'.$responseText.'");?>';
    // wszystko co bedzie wypisane tutaj jest jako responseText
    
    // zdaje sie, ze text php jest prawidlowo przesylany, ale nie jest interpretowany bo strona nie jest przeladowywana
    
    mysql_close($connection);

?>
Odpowiedz
#2
Eeee....co Ty w ogóle chcesz zrobić? Bo z tej sieczki niewiele wynika...
Dobre samopoczucie w tym tygodniu sponsoruje cytat:
Cytat:Mogę tylko tylko na prawo i lewo ale na środek nie mogę.
Odpowiedz
#3
...?
pobierasz adres z bazy a potem chcesz wypisać niby "include('.....')". Przecież to zwykły tekst Smile
Normalnie wypisz tresc strony (include czy co tam chcesz) co chcesz i będziesz miał zwrot.

tylko pamietaj by zwrot byl w odpowiednim formacie (nie jako tekst a html)
Odpowiedz
#4
Chcę, aby odczytany z bazy adres strony był includowany w odpowiednim miejscu na stronie w czasie rzeczywistym (bez przeładowania). Próbowałem include(tutaj prawidłowy adres do strony php) ale nic... Powiedzcie proszę jak ma wyglądać taki include w tym konkretnym przypadku. Gdy wpiszę <? ... ?> to nic się nie pojawia (ale w kodzie znacznik jest), a gdy wpiszę include(...) to się pojawia ten tekst (include..)
Odpowiedz
#5
Mylisz pojęcia.

http://doman.art.pl/kursjs/kurs/ajax/ajax.html

ale przede wszystkim poczytaj to:
http://doman.art.pl/kursjs/kurs/jquery/jquery_ajax.html

Ty nie masz includować strony, ale wypisać ją jako zwrot. Zresztą co się będę produkował - zapraszam do lektury Smile
Odpowiedz
#6
Wypisać jako zwrot - czy to znaczy że mogę jedynie sklejać ją po kawałku od zera, tj przebudowywać jej strukturę w moją stronę? Najlepiej 'uczyć się' jquerry czy czystego ajaxa?


Proszę o wyrozumiałość,
Grzegorz
Odpowiedz
#7
dzięki jQuery pozbywamy się zbędnej obawy o przeglądarki, które inaczej korzystają z obiektu XMLHTTPRequest. jQuery daje na prawdę rewelacyjne możliwości, jednak według mnie początkujący powinni skupić się na czystym JavaScript'cie bez frameworków w innym przypadku potem powstają skrypty, które są ciężkie w utrzymaniu i nieestetyczne.

Co do reszty. Chodzi tutaj o wysłanie zapytania, czyli upraszając to słowo pytania do serwera o dany plik np. mamy na serwerze plik user.php i poprzez AJAX chcemy zapytać serwer np. jaki adres E-mail ma dany użytkownik o danym Identyfikatorze. Wysyłamy te dane poprzez XMLHTTPRequest metodą GET czyli w adresie np. user.php?id=100 serwer pobiera dane użytkownika z bazy danych np. MySQL i przy użyciu funkcji echo/print itp. tworzy plik (dalej user.php), który jest plikiem XML czyli przechowuje jakieś dane. Cały plik jest wysyłany z serwera do klienta i wtedy można się odwołać np. do elementu "<email>", który zawiera email danego użytkownika.

Ogólnie to sprowadza się to do pobrania pewnych danych z serwera i ich przetworzenia. A nie sztywnego dodania pliku.
Odpowiedz
#8
"Ogólnie to sprowadza się to do pobrania pewnych danych z serwera i ich przetworzenia. A nie sztywnego dodania pliku. "
Oczywiście nie jest to do końca prawdą. Bardzo często o wiele łatwiej zwrócić cały html niż konkretne dane.

Ogólnie: wysyłasz jakieś parametry na serwer, zwracasz to co chcesz. W formie tekstu, html, json czy jak tam ci pasuje ;]
Odpowiedz
#9
A w formacie php się nie da, bo parser php pracuje tylko przy przeładowaniu strony? O to mi chodzi od początku Smile
Odpowiedz
#10
no proste ze sie nie da. Pytanie tylko po kiego ci taka możliwość? Przecież do przeglądarki i tak pójdzie wynik.
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Logowanie i rejestracja - includowanie toma5z 3 4,366 22-06-2011, 03:03
Ostatni post: mateo
  [PHP] Includowanie z innego serwera koorde 3 3,332 26-05-2008, 00:57
Ostatni post: Radek

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl