Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> AJAX $.POST - pusta zmienna
Slide
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 29.10.2013

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


Cześć.

Mam problem z wysyłaniem zmiennej przez AJAX. Mianowicie mam skrypt w PHP, w kórym znajduje się przycisk, a dokładniej:
  1. echo "<button class='usun' name=".$row['id'].">usun</button>";


Jak widać nazwą tego buttona jest wartość zczytana z tablicy. Wartość ta na pewno nie jest pusta, bo to sprawdziłem.
Chciałbym wysyłać wartość pola name do formularza PHP. Mam więc skrypt w jQuery który tę wartość odczytuje i następnie powinien do takowego skryptu wysłać.

  1. $("document").ready(function(){
  2. $("button.usun").on("click", function(event){
  3. event.preventDefault();
  4. $( "#dialog-confirm" ).dialog({
  5. autoOpen: false,
  6. height: 400,
  7. width: 500,
  8. modal: true,
  9. buttons: {
  10. Usuń: function() {
  11. $( this ).dialog( "close" );
  12. var id = $( event.target ).attr("name");
  13. $.ajax({
  14. type: "POST",
  15. data: id,
  16. URL: "delete/gallery.php",
  17. success: function(msg){
  18. document.location.href = "delete/gallery.php"
  19. }
  20. });
  21. },
  22. Anuluj: function() {
  23. $( this ).dialog( "close" );
  24. }
  25. }
  26. });
  27. $( "#dialog-confirm" ).dialog( "open" );
  28. });
  29. });


No własnie.. powinien. Jednak coś musiałem sknocić i wartość ta wysłana nie zostaje. Jeśli zamiast $.ajax dam zwykłe alert (id), to wszystko jest w porządku i poprawna wartość zostaje wyświetlona. Jeśli jednak chcę ją wyświetlić za pomocą PHP, okazuje się, że skrypt nic nie dostaje, albo przynajmniej twierdzi że nic nie dostał. Oto zawartość pliku "delete/gallery.php"

  1. <?php
  2. $id = $_POST['id'];
  3. if (empty($id)) {
  4. echo "pusta zmienna!";
  5. } else {
  6. echo $id;
  7. }
  8. ?>


Proszę o pomoc. Zapewne coś robię źle, ale myśle że po to na forum jesteśmy żeby sobie pomagać. Przynajmniej staram się czegoś nauczyć zamiast siedzieć z piwem w ręku smile.gif

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
SmokAnalog
post
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Dane powinny być wysłane jako obiekt, czyli zamiast:
[JAVASCRIPT] pobierz, plaintext
  1. data: id,
[JAVASCRIPT] pobierz, plaintext

Powinno być:
[JAVASCRIPT] pobierz, plaintext
  1. data: {id: id},
[JAVASCRIPT] pobierz, plaintext

Wtedy tę wartość masz w $_POST['id'].
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: 21.08.2025 - 13:31