Witam, mój temat jest niejako kontynuacją wątku: http://forum.php.pl/index.php?showtopic=173234
skąd też zaczerpnąłem kod.

Prosiłbym o pomoc bo z javascript i ajax jestem zielony.

Mam pole, które tworzy się dynamicznie po naciśnięciu buttona:

  1. $zapytanie = mysql_query ("SELECT * FROM $tabela ORDER BY id_services DESC");
  2. echo '<select name="uslugi[]" class="cena">';
  3. while($usluga = mysql_fetch_assoc($zapytanie)) {
  4. echo '<option value="'.$usluga['id_services'].'">'.$usluga['name'].'</option>';
  5. }
  6. echo '</select>';
  7. <input style="width: 40px;" class="okno_cena" type="text" />


Do tego skrypt:
  1. $(document).ready(function() {
  2.  
  3. $('select.cena').change(function() {
  4. $.getJSON('pobierz_cene.php', {option: $(this).val()}, function(data) {
  5. $('input.okno_cena').val(data.inputValue);
  6.  
  7. });
  8. });
  9.  
  10. });


  1. include 'db.php'; // połączenie się z bazą danych
  2. $tabela = 'services'; // zdefiniowanie tabeli MySQLs
  3.  
  4. $index = $_GET['option'];
  5. $zapytanie = mysql_query ("SELECT * FROM $tabela WHERE id_services = $index");
  6. $usluga = mysql_fetch_array($zapytanie);
  7. $cena = $usluga['price'];
  8. $a = new stdClass();
  9. $a->inputValue = "$cena";
  10. echo json_encode($a);


Problem w tym, że działa on tylko na pierwszym elemencie - tzn cena usługi wyświetla się we wszystkich polach input ale po zmianie w pierwszym polu select.
Chciałbym aby dla każdego wiersza działało to niezależnie czyli po wybraniu z selecta usługi zmieniała się cena w tym wierszu. Dla utrudnienia połączone jest to z zapytaniem do bazy danych :/
Druga sprawa to chciałbym obliczać również sumę z tych pól:

Chodzi o coś takiego http://zapodaj.net/images/78d1cc9e0f73.png