Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przesyłanie formularza przez advAjax
mr_Zola
post 12.01.2007, 08:13:49
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 12.01.2007
Skąd: dolny¶l±sk

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


Witam,
teraz kod:

index.php
  1. <script type="text/javascript" src="script.js"></script>
  2. <script type="text/javascript" src="advajax.js"></script>
  3.  
  4. <form action="a.php" method="post" id="submit_zamowienie" >
  5. <input type="radio" name="typ_0" value="profesionalne"/>
  6. <b>Profesionalne</b>
  7. <input type="radio" name="typ_0" value="szkolne"/>
  8. <b>Szkolne</b>
  9. <br />
  10. <input type="text" value ="0" size="4" name="ilosc_0">
  11. <select id="dod_0" name="dod_1" size="1" >
  12. <option> Żółty
  13. <option> Granatowy
  14. <option> Zielony
  15. </select>
  16. <input value ="Dalej" type="submit" onclick="wysylanie();">
  17. </form>
  18.  
  19. <div id="zamowienie"></div>


script.js
  1. function wysylanie()
  2. {
  3. advAJAX.assign($("submit_zamowienie"), {
  4. onInitialization : function(obj) { $("zamowienie").innerHTML = "Przygotowanie..."; },
  5. onSuccess : function(obj) { $("zamowienie").innerHTML = obj.responseText; },
  6. onError : function(obj) { alert("Błąd...: " + obj.status); }
  7. });
  8. advAJAX.get({ url: "a.php", tag: "zamowienie" });
  9. };


a.php
  1. <?php
  2. print_r($_POST);
  3. ?>


I pytanie dlaczego w Fx po wysłaniu formularza w div'a wpisywana jest całkowicie wypełniona tablica $_POST czyli: Array ( [ilosc_0] => 0 [dod_1] => Żółty )
a w IE niepełna: Array ( [ilosc_0] => 0 [dod_1] => )


--------------------
Go to the top of the page
+Quote Post
shpyo
post 12.01.2007, 11:47:14
Post #2





Grupa: Zarejestrowani
Postów: 574
Pomógł: 2
Dołączył: 13.04.2004
Skąd: Lublin

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


chyba nie zamknąłeś tagu <option>
Kod
<select id="dod_0" name="dod_1" size="1" >
<option value="zolty"> Żółty</option>
<option value="granatowy"> Granatowy</option>
<option value="zielony"> Zielony</option>
</select>


--------------------
Go to the top of the page
+Quote Post
mr_Zola
post 15.01.2007, 10:13:03
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 12.01.2007
Skąd: dolny¶l±sk

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


Cytat(shpyo @ 12.01.2007, 11:47:14 ) *
chyba nie zamknąłeś tagu <option>

Fakt nie zamknąłem ale to i tak nic nie zmieniło.
Zapomniałem dodać iż jak przesyłam ten formularz bez advajax to przesyła wszystko ok w IE.

Naprawdę nikt nie zna odpowiedzi na pytanie?

Ten post edytował mr_Zola 12.01.2007, 12:24:27


--------------------
Go to the top of the page
+Quote Post
ShaXbee
post 25.01.2007, 09:49:34
Post #4





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 19.10.2004
Skąd: Opole

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


1. Funkcja wysylanie(), jedynie podpina event handler - musisz ja wywołać pod formularzem, inaczej onSubmit pozostanie nieobsłużony.
2. script.js jest zadeklarowany przed advajax.js wiec nie ma dostepu do deklaracji AdvAjax.js - kod bedzie dzialac i tak, ponieważ AdvAjax jest 'pobierany' dopiero w momencie wywolania funkcji wysylanie(), ale mimo wszystko sugeruję deklaracje zamienić.
3. Zainstaluj sobie Firebug i zobacz czy jakieś błędy w Twoim skrypcie nie wylatują.

Ten post edytował ShaXbee 25.01.2007, 09:52:18
Go to the top of the page
+Quote Post
mr_Zola
post 25.01.2007, 10:32:16
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 12.01.2007
Skąd: dolny¶l±sk

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


Cytat(ShaXbee @ 25.01.2007, 09:49:34 ) *
1. Funkcja wysylanie(), jedynie podpina event handler - musisz ja wywołać pod formularzem, inaczej onSubmit pozostanie nieobsłużony.

co rozumiesz przez "musisz ją wywołać pod formularzem"]
Cytat
2. script.js jest zadeklarowany przed advajax.js wiec nie ma dostepu do deklaracji AdvAjax.js - kod bedzie dzialac i tak, ponieważ AdvAjax jest 'pobierany' dopiero w momencie wywolania funkcji wysylanie(), ale mimo wszystko sugeruję deklaracje zamienić.

zmieniłem
Cytat
3. Zainstaluj sobie Firebug i zobacz czy jakieś błędy w Twoim skrypcie nie wylatują.

Zainstalowałem i jest ok


--------------------
Go to the top of the page
+Quote Post
ShaXbee
post 25.01.2007, 18:32:49
Post #6





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 19.10.2004
Skąd: Opole

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


To znaczy po tagu </form> lub w body onload wywoływać.
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: 20.06.2025 - 20:03