Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP]Strona bez przeładowania
nikestylex7
post
Post #1





Grupa: Zarejestrowani
Postów: 386
Pomógł: 7
Dołączył: 22.04.2010
Skąd: Ziemia

Ostrzeżenie: (20%)
X----


Prosty skrypt otwierania stron bez przeładowania lecz co zrobić żeby działało poprawnie gdy zamiast normalnego linku np: strona-glowna.php bedzie aukcje.php?p=1. Wiem że przenoszę nazwę strony w get lecz chciałbym to zmienić tak aby nadal działało bez przeładowania lecz odbierało stronę ze zmiennymi.
moje pliki
includes.php
  1. <?php
  2. $page = $_GET['p'];
  3.  
  4. if(isset($page))
  5. {
  6. if(is_dir('pages/'))
  7. {
  8. require_once('pages/'.$page);
  9. }
  10. else
  11. {
  12. echo '<p>Plik pages/ nie istnieje!</p>';
  13. }
  14. }
  15. else
  16. {
  17. require_once('pages/strona-glowna.php');
  18. }
  19. ?>

scripts.js
  1. $(document).ready(function()
  2. {
  3. $('#menu a').click(function(){
  4. var changing_page = $(this).attr('href');
  5. $('#content').hide(0 ,request);
  6.  
  7. function request()
  8. {
  9. var page = $.ajax(
  10. {
  11. url: "includes.php?p=" + changing_page,
  12. type: "GET",
  13. success: function(html)
  14. {
  15. $('#content').html(html).show();
  16. }
  17. });
  18. }
  19. return false;
  20. });
  21. });

index.php
  1. <nav id="menu">
  2. <ul>
  3. <li><a href="strona-glowna.php">&raquo; Home</a></li>
  4. <li><a href="aukcje.php?p=1">&raquo; Samochody</a></li>
  5. <ul>
  6. <li><a href="aukcje.php?p=1&a=1">&raquo; BMW</a></li>
  7. <ul>
  8. <li><a href="aukcje.php?p=1&a=1&r=3">&raquo; Sedan</a></li>
  9. <li><a href="aukcje.php?p=1&a=1&r=4">&raquo; Kombi</a></li>
  10. <li><a href="aukcje.php?p=1&a=1&r=5">&raquo; Coupe</a></li>
  11. </ul>
  12. <li><a href="aukcje.php?p=1&a=2">&raquo; Kia</a></li>
  13. <li><a href="aukcje.php?p=1&a=3">&raquo; Alfa Romeo</a></li>
  14. <li><a href="aukcje.php?p=1&a=4">&raquo; VW</a></li>
  15. <li><a href="aukcje.php?p=1&a=5">&raquo; Opel</a></li>
  16. </ul>
  17. <li><a href="aukcje.php?p=2">&raquo; Motocykle</a></li>
  18. <li><a href="aukcje.php?p=3">&raquo; Łodzie</a></li>
  19. </ul>
  20. </nav>


Ten post edytował nikestylex7 30.05.2013, 17:22:22
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


Cytat
Prosty skrypt otwierania stron bez przeładowania lecz co zrobić żeby działało poprawnie gdy zamiast normalnego linku np: strona-glowna.php bedzie aukcje.php?p=1.

Z takiej strony ajax pobierze, jaką mu podasz. To czy link będzie miał jakieś dane GET, nie ma tu nic do rzeczy.

U Ciebie atrybut href to np. : "aukcje.php?p=1&a=1&r=3" - on wędruje do zmiennej changing_page.
Ajaxem pobierasz zawartość strony : "includes.php?p=" + changing_page, czyli dla w/w atrybutu href będzie to adres : "includes.php?p=aukcje.php?p=1&a=1&r=3".

Wydaje mi się, że to jest powodem tego, że skrypt nie działa jak oczekujesz. Być może się jednak mylę, bo problem/pytanie jest bardzo słabo opisany.


--------------------
:)
Go to the top of the page
+Quote Post
hondek
post
Post #3





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


A nie powinieneś tam zamiast

  1. require_once()


dać



?

Ten post edytował hondek 30.05.2013, 19:33:43


--------------------
przetwornik yt na czasie :)
Go to the top of the page
+Quote Post
peter13135
post
Post #4





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


A czemu uważasz, że powinien tak zrobić ? Skąd wiesz, co kryje się w includowanym pliku ?


--------------------
:)
Go to the top of the page
+Quote Post
hondek
post
Post #5





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

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


Bo twoj request w zdarzniu 'success' oczekuje chyba html'a, więc musisz go wyechować smile.gif

Kod
success: function(html)
{
$('#content').html(html).show();
}


EDIT:
Sorka myślałem, że autor pyta,

includowanie pliku nie wyrzuci zawartosci pliku na ekran, więc w zmiennej 'html' nie będzie contentu pliku, a tego chyba oczekuje autor

Ten post edytował hondek 30.05.2013, 22:41:28


--------------------
przetwornik yt na czasie :)
Go to the top of the page
+Quote Post
peter13135
post
Post #6





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


Mizerna teorie waść prawisz.

Z tego co wnioskuję z tego co autor napisał - to on includuje pliki php, a nie html/txt. Nie wiem czy wiesz, ale plik PHP (który autor usiłuje includować) prawdopodobnie właśnie coś wyświetla, czyli pewnie w nim jest jakieś echo/print/readfile.


--------------------
:)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 14:46