Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][AJAX][PHP]zmiana treści strony bez przeładowania ?
RubiX
post
Post #1





Grupa: Zarejestrowani
Postów: 162
Pomógł: 6
Dołączył: 14.02.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam
Szukam szukam i znaleźć nie mogę. Potrzebuję skrypt który zmienia treść strony po kliknięciu w link bez jej przeładowania np:
KLIKNIJ
Tutaj jest na dole panel :
Produkty powiązane Klienci kupili również Komentarze

Po kliknięciu w link zmienia się tekst na dole. Znalazłem 1 kod ale działa przez xml i po wczytaniu pliku nie pobiera mi zmiennych i nie mogę przez to operować na php (wczytuje tylko sam tekst z pliku).
Czy spotkał się ktoś z czymś takim i może mnie naprowadzić ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
CyberDuck_
post
Post #2





Grupa: Zarejestrowani
Postów: 135
Pomógł: 15
Dołączył: 17.08.2009

Ostrzeżenie: (0%)
-----


Ja Ci opisze tutaj dokladnie jaki ja sposob stosuje i
moze Ci sie przyda.
Robisz tak :
1. w miejscu gdzie ma byc podmieniana zawartosc, wyswietlana
za kazdym razem inna zawartosc strony bez przeladowania
umieszczasz :
  1. <div id='changeMeOknoRozm'></div>

Miedzy znaczniki div rzecza jasna mozesz zaladowac dowolna
wartosc startowa, ktora pozniej zostanie zmieniona jesli w dowolnym
momencie bedziesz chcial to zrobic. W nazwie id mozesz umiescic
dowolna wartosc. Dzieki temu mozesz nawet kilka blokow na jednej
stronie podmieniac w dowolny sposob.

2. Robisz sobie ramke w dowolnym miejscu na stronie o wielkosci
1px x 1px dzieki czemu nie bedzie praktycznie widoczna :
  1. <iframe name='czat_ram_okno_roz' marginwidth='0' marginheight='0' align='top' border='0' frameborder='0' width='1' height='1' src='czat_ramka_okno_rozm.php' scrolling='no'></iframe>


3. Teraz w tym skrypcie, ktory bedzie ladowany do ramki jesli chcesz
cos w nim podmienic to piszesz :
  1. echo "<script language=\"JavaScript\">";
  2. echo "parent.document.getElementById(\"changeMeCHATownicy\").innerHTML = \"$lista\";";
  3. echo "</SCRIPT>";

W zmiennej lista mozesz zaladowac dowolna zawartosc jaka ma sie
znalezc miedzy divami.

Mam nadzieje, ze wiesz jak sie pisze linki z wywolaniem ramki :
  1. <a href='skrypt_obslugujacy_ramke.php' target='czat_ram_okno_roz'>cos</a>

Niezaleznie od tego jak wywolasz ramke i co w niej obliczysz to po wywolaniu tego
kawaleczka JavaScript zaladujesz na strone dowolna zawartosc bez przeladowywania.

Tutaj masz przyklad :
http://www.bluelan.pl/przyklad_gd/zawartosc.php

Moze malo elegancko, ale skrypt doslownie wyglada tak :
Plik 'zawartosc.php' :
  1. <?php
  2.  
  3. echo "<a href='zawartosc_ramka.php?opcja=1' target='ramka'>tekst1</a>, ";
  4. echo "<a href='zawartosc_ramka.php?opcja=2' target='ramka'>tekst2</a>, ";
  5. echo "<a href='zawartosc_ramka.php?opcja=3' target='ramka'>tekst3</a>, ";
  6. echo "<a href='zawartosc_ramka.php?opcja=4' target='ramka'>tekst4</a>, ";
  7. echo "<a href='zawartosc_ramka.php?opcja=5' target='ramka'>Grafika</a>";
  8.  
  9. echo "<br><br><div id='changeMe' align='center'>zawartosc poczatkowa</div>";
  10.  
  11.  
  12. echo "<iframe name='ramka' marginwidth='0' marginheight='0' align='top' border='0' "
  13. ."frameborder='0' width='1' height='1' src='zawartosc_ramka.php' scrolling='no'></iframe>";
  14. ?>

Plik 'zawartosc_ramka.php' :
  1. <?php
  2.  
  3. if ($_GET['opcja'] == '1') {
  4. $lista = 'Pierwszy tekst';
  5. }
  6. if ($_GET['opcja'] == '2') {
  7. $lista = 'Drugi tekst';
  8. }
  9. if ($_GET['opcja'] == '3') {
  10. $lista = 'Trzeci tekst';
  11. }
  12. if ($_GET['opcja'] == '4') {
  13. $lista = 'Czwarty tekst';
  14. }
  15. if ($_GET['opcja'] == '5') {
  16. $lista = "<img border='0' src='5.jpg'>";
  17. }
  18. if ($lista != '') {
  19. echo "<script language=\"JavaScript\">";
  20. echo "parent.document.getElementById(\"changeMe\").innerHTML = \"$lista\";";
  21. echo "</SCRIPT>";
  22. }
  23. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 10:57