Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery][PHP] Formularze POST.
MiXen
post 1.03.2012, 13:27:28
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Witam. Mam formularz,a w nim pola i chciałbym przesłać poprzez taki kod:
Kod
<script type="text/javascript">
$("input").click( function()
{
if($(this).val() == 'Wy¶lij')
{
$('#status').load('body/kontakt_send.php','',$('#status').slideDown());
}
return false;
});
</script>

Niestety, ale do pliku kontakt_send.php nie dochodzi tablica post i niestety wszystkie zmienne są poste, jak mogę to naprawić?

Nikt nie ma pomyslu jak to rozwiazac?
Go to the top of the page
+Quote Post
nospor
post 1.03.2012, 13:39:56
Post #2





Grupa: Moderatorzy
Postów: 36 478
Pomógł: 6302
Dołączył: 27.12.2004




Przecież ty tu żadnych danych nie wysyłasz.... nie rozumiem skad wiec zdziwienie, że nic w post nie idze :/
http://api.jquery.com/load/


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
MiXen
post 1.03.2012, 16:19:13
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Hmm rozumiem, czyli po prostu nie wysyłam danych. Ale niestety ten link mi nie za bardzo pomógł i czy mógłbys wytłumaczyć mi to łopatologicznie, jak to przesłać, abym po stronie php mógł odczytywać z tablicy$_POST['costam']?
Go to the top of the page
+Quote Post
nospor
post 2.03.2012, 07:44:49
Post #4





Grupa: Moderatorzy
Postów: 36 478
Pomógł: 6302
Dołączył: 27.12.2004




Link ci nie pomógł? Przecież na samym początku masz napisane:
.load( url [, data] [, complete(responseText, textStatus, XMLHttpRequest)] )
.....

Kod
$('#status').load('body/kontakt_send.php',{costam : 'jakaswartosc', innecostam:'innawartosc'},$('#status').slideDown());


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
MiXen
post 5.03.2012, 21:45:18
Post #5





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Niestety, mam coś takiego
Kod
$('#status').load('body/kontakt_send.php',{imie: '<?PHP echo $_POST['imie']; ?>'},$('#status').slideDown());
I probowałem w pliku kontakt_send.php użyć zmiennej $_POST['imie'], ale nadal jest pusta, co nadal robię nie tak?
Go to the top of the page
+Quote Post
ylk
post 5.03.2012, 22:04:20
Post #6





Grupa: Zarejestrowani
Postów: 194
Pomógł: 26
Dołączył: 9.01.2011
Skąd: /dev/null

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


Nospor wprowadzasz go w błąd, bo on pisze o metodzie POST wysyłając coś GETem, a ty go utrzymujesz w tym zamotaniu smile.gif

Zrób sobie formularz, daj mu jakieś id, powiedzmy <form id=dupa>
I potem z jquery
  1. $(function(){
  2. $('#dupa').submit(function(){
  3. $.post('body/kontakt_send.php', $('#dupa').serialize());
  4. });
  5. });

i wtedy w skrypcie kontakt_send.php odwołujesz się do pól formularza poprzez $_POST['nazwa_pola']

Ten post edytował ylk 5.03.2012, 22:05:00
Go to the top of the page
+Quote Post
nospor
post 6.03.2012, 08:42:42
Post #7





Grupa: Moderatorzy
Postów: 36 478
Pomógł: 6302
Dołączył: 27.12.2004




@ylk z linku, który podałem:
Cytat
The POST method is used if data is provided as an object; otherwise, GET is assumed.


{imie: '<?PHP echo $_POST['imie']; ?>'}

to może spróbuj wpierw {imie: 'Marcin'}
Teraz działa? Idzie ajaxem imie?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
MiXen
post 9.03.2012, 21:56:40
Post #8





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Z POST jednak coś nie działa, a jeśli właśnie wpiszę statyczne imie to działa, dziwne, to nie mogę złapać pół formularzy przez post w php? Więc jak mam to zrobić?
ps. jak wywować reset pól formularza, bo teraz same się nie czyszczą

Ten post edytował MiXen 9.03.2012, 21:58:35
Go to the top of the page
+Quote Post
nospor
post 9.03.2012, 22:08:09
Post #9





Grupa: Moderatorzy
Postów: 36 478
Pomógł: 6302
Dołączył: 27.12.2004




yyy....
imie: '<?PHP echo $_POST['imie']; ?>'
No przecież dane postem dopiero wysyłasz wiec niby jakim cudem przed wysłaniem ma ci coś działac?

imie: 'marcin'
Tak wysyłasz postem imie marcin. To imie będzie dopiero dostępne w $_POST['imie'] w skrypcie kontakt_send.php po wysłaniu... nie przed.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
MiXen
post 11.03.2012, 00:50:42
Post #10





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Tyle to sam wiem, przecież to logiczne, ale jak mam przesłać dane z formularza, jak się do nich odwołać, jak, jak jak?
Go to the top of the page
+Quote Post
cudny
post 11.03.2012, 22:55:36
Post #11





Grupa: Zarejestrowani
Postów: 387
Pomógł: 66
Dołączył: 31.03.2005
Skąd: Kielce

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


Tu masz wszystko czego Ci trzeba: http://api.jquery.com/category/forms/
Robisz sobie
  1. <form id="form_1" type="post"><input ... /></form>

Dajesz:
  1. $("#form_1").submit(function() {
  2. // tutaj korzystasz sobie z funkcji dostępnych pod linkiem podanym wyżej - wszystko masz w obiekcie $(this)
  3.  
  4. return false;
  5. });


Ten post edytował cudny 11.03.2012, 22:56:11


--------------------
..::: Jak pomogłem to kliknij pomógł. Tak rzadko używacie tej opcji :( :::..
Go to the top of the page
+Quote Post
MiXen
post 13.03.2012, 23:20:09
Post #12





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Dobrze, coś pokombinowałem i udało mi się to zrobić, ale mam problem z polskimi znakami przesyłanymi przez te pola. Jeśli chodzi o ładowanie plików przez jQuery to rozwiązałem to czymś takim header('Content-Type: text/html; charset=iso-8859-2'); , ale tutaj tego nie użyję, jak moge to zrobić wink.gif?
Go to the top of the page
+Quote Post
cudny
post 14.03.2012, 10:18:52
Post #13





Grupa: Zarejestrowani
Postów: 387
Pomógł: 66
Dołączył: 31.03.2005
Skąd: Kielce

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


Pewnie działasz na windowsie... coś takiego jak poniżej powinno pomóc:

  1. $codding = mb_detect_encoding($string)
  2. if($codding != "UTF-8") $string = iconv($codding, "UTF-8",$string);


Ale to już osobny temat


--------------------
..::: Jak pomogłem to kliknij pomógł. Tak rzadko używacie tej opcji :( :::..
Go to the top of the page
+Quote Post
MiXen
post 18.03.2012, 21:24:04
Post #14





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 16.02.2012

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


Dzięki za pomoc, wszystko jest już oki ;]
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: 12.06.2024 - 10:42