Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wysyłanie danych przez pętle foreach
boosik01
post 19.12.2017, 23:25:15
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 19.08.2009

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


Witam. Mam pewien problem. Pobieramy sobie unikalne dane użytkownika z bazy danych tzw id.
I teraz dla każdego użytkownika chce mieć tak jak by inny przycisk, tzn ten sam ale z unikalnym id.
  1. foreach($a as $row)
  2. {
  3. ?>
  4.  
  5.  
  6. <form action="php/character.php" id="idd" name="idd" class="nk-form nk-form-ajax nk-form-style-1" action="post">
  7.  
  8. <button class="nk-btn nk-btn-circle nk-btn-color-main-2" style="position: absolute; bottom: 0; margin-left: -125px;" id="id_char" name="id_char" value="<?=$row['id'];?>" type="submit">Wciel się w tą postać!</button>
  9. </form>
  10. <?php
  11. }
  12. ?>


czyli we value mam swój unikalny id.

teraz za pomocą ajaxa chce ten id wysłać do php

  1. $(document).ready(function(){
  2. $('#id_char').on('click',function(e) {
  3.  
  4. $('#loader').fadeIn('normal');
  5. $.ajax({
  6. type: 'post',
  7. url: 'php/character.php',
  8. dataType: 'json',
  9. data: {
  10. id_char: $('#id_char').val()
  11.  
  12. },
  13.  
  14. success: function(data){
  15. $('#loader').hide(0);
  16. if(data.succes==true){
  17. setTimeout(function () {
  18. window.location.href = "main.php";
  19. }, 0);
  20.  
  21. }
  22. else{
  23.  
  24. }
  25.  
  26. },
  27. error : function(XMLHttpRequest, textStatus, errorThrown) {
  28.  
  29. }
  30.  
  31. });
  32. return false;
  33. });
  34. });


problem w tym że pierwszy button działa dobrze, czyli jeśli we value jest id = 5 to wysyła cyfre 5, zaś gdy obok mam drugi button o id 6 to już nie wysyła tego. Pusta tablica danych.

Ten post edytował boosik01 19.12.2017, 23:26:05
Go to the top of the page
+Quote Post
SmokAnalog
post 19.12.2017, 23:31:26
Post #2





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

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


Podstawy podstaw HTML: atrybut id musi być unikalny.
Go to the top of the page
+Quote Post
boosik01
post 19.12.2017, 23:33:14
Post #3





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 19.08.2009

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


Fakt, zapomnialo mi się o tym, ale jakieś sugestie jak to rozwiązać ?
Go to the top of the page
+Quote Post
SmokAnalog
post 19.12.2017, 23:38:30
Post #4





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

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


Wewnątrz .click() masz dostęp do $(this), gdzie możesz odczytać co Ci się tylko podoba. A zamiast #id_char możesz dać jakikolwiek selektor, który obejmie wszystkie przyciski.

Zresztą jeśli ten formularz składa się tylko z przycisków, to może lepiej użyć po prostu linków z odpowienim parametrem ?idd=xxx?
Go to the top of the page
+Quote Post
viking
post 20.12.2017, 04:41:58
Post #5





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Zainteresuj się delegacją zdarzeń zamiast podpinać w pętli czy inne głupoty.


--------------------
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: 28.03.2024 - 15:45