Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX] ajax nie pobiera danych z select
Forum PHP.pl > Forum > Przedszkole
Randallmaster
kod select:

  1. <form id="form_miesiac" action="" method="post">
  2. <select id="set_orders" name="set_orders" onChange="submit();">
  3. <?
  4.  
  5. for($i=1;$i<=12;$i++){
  6. ?>
  7. <option value="<?= $i; ?>"><?= $i; ?></option>
  8.  
  9. <?
  10. }
  11. ?>
  12. </select>
  13. </form>


a tu ajax:

  1. $(document).ready(function(){
  2. $("form#form_miesiac").submit(function() {
  3. var set_orders = $('select[name=set_orders] option:selected');
  4. var data = 'set_orders=' + set_orders.val();
  5. $.ajax({
  6. type: "POST",
  7. url: "../ins/miesiac.php", //tutaj sjrypt zapisania
  8. data: data,
  9. success: function(value){
  10. }
  11. });
  12. return false;
  13. });
  14. });
  15.  


nie zapisuje mi do bazy, zapis w pliku miesiac.php jest dobry ponieważ sprawdziłem w sql.

adamantd
  1.  
  2. var data = 'set_orders=' + set_orders.val();///////po co to równa się?
  3.  
  4. type: "POST",
  5. url: "../ins/miesiac.php", //tutaj sjrypt zapisania
  6. data: { 'set_orders':set_orders.val() },
  7.  
  8.  
Randallmaster
adamantd Twój przykład nie działa

Wszystko było robione według tego tutoriala:

http://www.webskrypty.pl/2010/dodawanie-re...-pomoca-jquery/
mortus
Czy ten formularz ma służyć tylko i wyłącznie do obsługi miesięcy? To jest całkiem bez sensu. Problemem jest najprawdopodobniej wywoływanie zdarzenia submit przy zmianie opcji (atrybut onchange elementu select). Użyj zdarzenia .change() jak w przykładzie.

Gdybyś robił wszystko w 100% zgodnie ze wspomnianym tutorialem, to wyglądałoby to mniej więcej tak i wtedy będzie działać. A przyznasz, że różnica jednak jest.
adamantd
A testowałeś czy dane są przekazywane prawidłowo do pliku php? Testowałeś czy udało się połączyć z bazą danych? Czy ścieżka do pliku php jest prawidłowa? Na podstawie tego co pisze mortus sprawdź przed ajaxem np alertem czy prawidłowo zebrałeś dane z formularza

  1.  
  2. alert(set_orders.val());
  3.  
Randallmaster
Dzięki mortus działa po zmianie na change smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.