Въпрос относно js функция

tyrla4eto

Registered
Правя таблица в коята изкарва всички потребители от базата данни с PHP, над тази таблица имам този код:

Код:
<select style="width: 150px; font-size: 11px;" name="order">
<option value="username" selected="selected">Потребителско име</option>
<option value="email">Email</option>
<option value="ut">Регистрация</option>
<option value="last_login">Последно влизане</option>
</select>

чрез който избирам как да бъдат сортирани резултатите. Въпросът ми е как мога чрез извикване на js функция в атрибута "onchange", js функцията да вземе резултата и да го запази в PHP променлива, която да визуализира резултата?
 
Ами заявката която съм направил за да вадя потребителите от базата данни е следната:

Код:
mysql_query("SELECT * FROM users order by ".$order);

Като искам информацията от формата да се запазва в променливата $order. Не се сещам за друг начин. Ако има по-лесен варянт, ако може да ми изясниш как трябва да стане?
 
Трябва ти AJAX значи. С jQuery
Код:
$(document).ready(function() {
    $('select').on('change', function() {
        var value = $(this).val();
        $.post('URL', {order: value})
        .done(function(result) {
            $('div').html(result);
        })
    })
})
Тук подаваш избраната стойност като POST name='order' и после вземаш резултата и го правиш каквото трябва, само си смени URL-а

Ако не искаш да използваш jQuery
Код:
var sel = document.querySelector('select');
sel.addEventListener('change', function() {
var data = 'order='+this.value
var req = new XMLHttpRequest();
req.open('POST', 'URL', true);
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
req.send(data);
req.onload= function() {
  if (req.status >= 200 && req.status < 400) {
    var resp = req.responseText;
    var el = document.querySelector('div');
    el.innerHTML = resp;
  }
}
})
 

Back
Горе