Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> ajax przeładowanie jednego div-a
djsalat
post 10.03.2010, 17:50:54
Post #1





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 20.01.2010
Skąd: łódzkie

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


Witam! na samym początku chciałem powiedzieć ze wujek google mi nie pomógł mi rozwiązać mojego problemu.

Otóż mam na swojej stronie player shoutcast i sobie muzyczka leci i chciałbym żeby leciała cały czas przy przeglądaniu całej strony. Aby to zrobić pytałem wujka i znalazł mi kilka rzeczy ale po sprawdzeniu i funkcjonowania linków pozostał mi tylko ten: http://tutorialzine.com/2009/09/simple-ajax-website-jquery/. wszystko było miło ale ja na stronie potrzebuję również php, a tutaj są ładowane strony z rozszerzeniem html. Udało się mi jednak tak pozmieniać rozszerzenia w tym i zaczęło to śmigać ładnie i przyjemnie ale pojawił się kolejny problem;/ Na mojej stronie potrzebuję logowanie i to też bez przeładowania strony. Znalazłem coś takiego: http://devstring.com/ajax-login-module. Jeśli połączę teraz jedno z drugim to logowanie przestało mi działać. wyświetla się mogę wpisać login i hasło a przycisk już nie działa. korzystam z biblioteki jquery...

Czy znalazła się by dobra duszyczka żeby choć troszkę mnie nakierowała na to co moze w tym czymś nie graćquestionmark.gif

Moje przypuszczenia to może to:
1. ten ajax z przeładowaniem stron działa tylko pod html??
2. przycisk przy logowaniu korzysta z polecenia onclik a to też służy do przeładowań strony co możę jedno drugie wykluczaćquestionmark.gif
3. zła konstrukacja plików które ładuję. Każdy plik który chcę zeby się załadował pisze w nim html, head, body, itp... i jeśli jest dołaczany jakiś skrypt do tej podstrony to ładuję go w head'zie podstrony a nie w tym głównym;/

Borykam się z tym już z tydzień i próbowałem metody "prób i blędów" jednak do niczego sensownego nie doszedłem:( Proszę o pomoc sadsmiley02.gif

nikt nic?? zero pomocy??
Go to the top of the page
+Quote Post
luck
post 11.03.2010, 18:49:11
Post #2





Grupa: Zarejestrowani
Postów: 317
Pomógł: 58
Dołączył: 6.11.2005

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


Zainstaluj sobie rozszerzenie do Firefoksa, które nazywa się Firebug. Podstawa przy zabawie z Ajax. Zobacz jakie błędy wyrzuca konsola.


--------------------
Go to the top of the page
+Quote Post
masahuku
post 12.03.2010, 03:57:56
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 4
Dołączył: 11.12.2009

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


onclick ma taką magiczną właściwość "....; return false" - wykona JS'a oleje przekierowanie - nie ma JS'a wykona przekierowanie. Ciebie jednak powinno interesować onSubmit jak chodzi Ci o forma. Możesz też odpalić stronke w IE (pokazuje bardzo okrojone info o błędzie, ale często wystarcza do prostych skryptów)
Go to the top of the page
+Quote Post
mortus
post 12.03.2010, 07:52:44
Post #4





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


1. Nie ma znaczenia, jakie jest rozszerzenie pliku. Zauważ, że w A simple AJAX website with jQuery strony ładowane są poprzez plik load_file.php i tam jest dodawane rozszerzenie .html do każdej strony
  1. echo file_get_contents('pages/page_'.$page.'.html');

2. Niby przycisk do logowania, podobnie jak i linki do poszczególnych podstron korzystają z jednego zdarzenia onclick(). Tyle, że
Kod
$('li.menuitem').onclick(...);
to już nie to samo, co
Kod
$('input#submit_login').onclick(...);
Pierwszy kod możemy czytać tak: po kliknięciu na któryś z elementów listy <li> o klasie menuitem wykonaj ..., natomiast drugi kod oznacza: po kliknięciu na input-a (oczywiście jest to nasz przycisk <input type="submit" id="submit_login" value="zaloguj" />) o identyfikatorze submit_login wykonaj ... . W skrypcie, który podałeś Ajax Login Module zdarzenie onclick jest podpięte bezpośrednio do konkretnego przycisku w kodzie html.

3. To na pewno jest problem. Skopiuj taki kod źródłowy strony z przeglądarki i wrzuć do walidatora (x)html. W podstronach powinna się znajdować raczej tylko i wyłącznie konkretna treść (nie ma znaczenia, czy będzie to treść statyczna, czy dynamiczna - generowana np. z bazy danych). Wszystkie skrypty jQuery powinny być załadowane w head-erze strony głównej. Dodatkowo, aby dodać jakieś zdarzenie do załadowanej przez jQuery treści (np. jakiegoś div-a) powinniśmy korzystać z metody .live() framework-a jQuery.

Ten post edytował mortus 12.03.2010, 07:53:43
Go to the top of the page
+Quote Post
northwest
post 12.03.2010, 10:52:08
Post #5





Grupa: Zarejestrowani
Postów: 788
Pomógł: 1
Dołączył: 17.09.2004

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


  1. <script>
  2. function odswiez_diva(){
  3. $.post('b.php',{pokaz:'divek'},function(odebrane_dane){
  4. $('#divek').html(odebrane_dane)
  5. })
  6. }
  7.  
  8. </script>
  9. <form action = "b.html" method="post">
  10. <input type="hidden" name="pobranie" value="nie">
  11. <input type="hidden" name="pilne" value="nie">
  12. <input type="checkbox" name="pobranie2" [/quote]> onClick="odswiez_diva()" />[quote]</form>
  13.  
  14. <div id='divek'>
  15. <?php echo $sesja; echo $_POST[pilne]; ?> </div>


Da się takiego diva po prostu odświerzyć, czy trzeba POSTem?
Go to the top of the page
+Quote Post
djsalat
post 13.03.2010, 13:48:51
Post #6





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 20.01.2010
Skąd: łódzkie

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


Szczerze mówiąc to teraz się zgubiłem...

A simple AJAX website with jquery i ładowanie stron to tam jest jest plik php który jak mówisz

mortus jest to
Cytat
echo file_get_contents('pages/page_'.$page.'.html');

ale pozmieniałem to na php i zamist tego wyżej zrobilem na
  1. echo include(''.$page.'.php');


no i sie załadowało ale przycisk nie działał;/

A mówiąc ze sie zagubiłem tzn nie wiem za co się wziąć... wiem narazie co chce uzyskaćtongue.gif. Może mi nakierujesz?? Mam Stronę głowną i do niej chce załadować logowanie oraz w późniejszym czasie kolejne podstrony.... a źeby to zładować to co musze zrobićquestionmark.gif? lub czy to logowanie się nadaje do ładowania....
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 04:47