Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][JavaScript][AJAX] Przesyłanie "formularza" od AJAX'a do PHP
thomson89
post
Post #1





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

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


Witam!

Mam do zbudowania sklep internetowy. AJAX'a prawie nie znam a chcę zbudować panel, na jego podstawie tongue.gif

Ale nie w tym rzecz. Mam prosty formularz, kod. Tak do testów. Obecnie przesyłanie wartości pola typu text odbywa się poprzez metodę, którą można nazwać GET. Ale jeżeli będę miał więcej pól, w tych polach będą za długie wartości? Hasła? Przesyłanie takiego czegoś się nie sprawdzi. A kompletnie nie mam pomysłu, jak takie coś wykonać inną metodą. Metoda POST, ale bez przeładowania strony? Jak przesłać inaczej dane, z formularza bez kliknięcia submit do pliku php, aby ten je odebrał, przetworzył, zwrócił? Pomóżcie!

Plik PHP:
  1. <?php
  2. echo '<h1>'.$_GET['imie'].'</h1>';
  3. ?>


Dokument HTML:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
  3. transitional.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  7. <title>AJAX test</title>
  8. </head>
  9. <script language="javascript">
  10. // pierwsza część kodu var ObiektXMLHttp = false;
  11. if (window.XMLHttpRequest)
  12. {
  13. ObiektXMLHttp = new XMLHttpRequest(); }
  14. else if (window.ActiveXObject)
  15. {
  16. ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  17.  
  18. // druga część kodu
  19. function getData(zrodlo) {
  20. if(ObiektXMLHttp)
  21. {
  22. var cel = document.getElementById('div');
  23. ObiektXMLHttp.open("GET", zrodlo);
  24.  
  25. ObiektXMLHttp.onreadystatechange = function()
  26. {
  27. if (ObiektXMLHttp.readyState == 0 || ObiektXMLHttp.readyState == 1 || ObiektXMLHttp.readyState == 2 || ObiektXMLHttp.readyState == 3) {
  28. document.getElementById('div').innerHTML = '<img src="loading11.gif"/>'; }
  29.  
  30. if (ObiektXMLHttp.readyState == 4)
  31. {
  32. document.getElementById('div').innerHTML = "";
  33. cel.innerHTML = ObiektXMLHttp.responseText;
  34. }
  35. }
  36. // trzecia część kodu
  37. ObiektXMLHttp.send(null); } }
  38. <div id="div">
  39. <input type="text" id="imie">
  40. </form>
  41. <button onclick="getData('submit.php?imie=' + document.getElementById('imie').value, 'div');">Pobierz</button>
  42. </div>
  43. </body>
  44. </html>


Pozdrawiam!

Ten post edytował thomson89 16.12.2009, 23:33:59


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Daj sobie spokój z "czystym" Ajax -em teraz jest tyle bibliotek do JS w których jest elegancka obsługa ajaxa (+ obsluga formularzy )że zrobienie tego co chcesz zajmie Ci moment a i będziesz pewien że wszystko działa pod różnymi przeglądarkami.

@DOWN
@bolverk twoja odpowiedz nic nie wniosła do tematu jak już chcesz polecać jakąś bibliotekę to chociaż rzuć linki które przydadzą się autorowi.

Ten post edytował skowron-line 17.12.2009, 00:01:07


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
bolverk
post
Post #3





Grupa: Zarejestrowani
Postów: 57
Pomógł: 6
Dołączył: 10.08.2009
Skąd: Nowe Miasto Lubawskie

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


To co kolega powyżej polecam + jQuery.


--------------------
Użytkownicy jak życie, wszystkim mogą cię zaskoczyć.
Go to the top of the page
+Quote Post
thomson89
post
Post #4





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

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


JQuery!? Świetne narzędzie. Można bardzo ładne stronki w tym robić! Bardzo mi się to podoba. I mimo, że JS tak dobrze nie znam, to z manualem JQuery potrafię coś napisać. Dzięki!


--------------------
Sklep 70%
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: 22.08.2025 - 01:04