Отправьте форму с помощью Ajax и jQuery

Существует множество способов предотвращения SQL-инъекций и других SQL-хаков. Вы можете легко найти его в Интернете (Google Search). Конечно, PDO - одно из хороших решений. Но я хотел бы предложить вам некоторые хорошие ссылки с помощью SQL Injection.

Что такое SQL-инъекция и как предотвратить

Руководство PHP для SQL-инъекция

Microsoft объяснение SQL-инъекции и предотвращения в PHP

и некоторые другие, подобные Предотвращение SQL-инъекций с MySQL и PHP

Теперь, почему вам нужно предотвратить запрос из SQL-инъекции?

Я хотел бы сообщить вам: почему мы пытаемся предотвратить SQL-инъекцию с помощью Ниже приведен короткий пример:

Запрос для проверки подлинности входа:

$query="select * from users where email='".$_POST['email']."' and password='".$_POST['password']."' ";

Теперь, если кто-то (хакер) помещает

$_POST['email']= admin@emali.com' OR '1=1

и пароль что-либо ....

Запрос будет анализироваться в системе только до:

$query="select * from users where email='admin@emali.com' OR '1=1';

Другая часть будет отброшена. Итак, что будет? Неавторизованный пользователь (хакер) сможет войти в систему как администратор без своего пароля. Теперь он может делать все, что может сделать администратор / адрес электронной почты. См., Очень опасно, если SQL-инъекция не предотвращается.

58
задан M A Hossain Tonu 17 April 2012 в 08:02
поделиться

3 ответа

This is what ended up working.

$("select").change(function(){
    $.get("/page.html?" + $(this).parent("form").find(":input").serialize()); 
});
14
ответ дан 24 November 2019 в 18:39
поделиться

Существует хорошее плагин формы , который позволяет Вам отправлять HTML-форму асинхронно.

$(document).ready(function() { 
    $('#myForm1').ajaxForm(); 
});

или

$("select").change(function(){
    $('#myForm1').ajaxSubmit();
});

для представления формы сразу

30
ответ дан raveren 24 November 2019 в 18:39
поделиться

Сначала дайте свою форму id атрибут, тогда используйте код как это:

$(document).ready( function() {
  var form = $('#my_awesome_form');

  form.find('select:first').change( function() {
    $.ajax( {
      type: "POST",
      url: form.attr( 'action' ),
      data: form.serialize(),
      success: function( response ) {
        console.log( response );
      }
    } );
  } );

} );

Так этот код использование .serialize() для вытаскивания соответствующих данных из формы. Это также принимает выбор, о котором Вы заботитесь, первый в форме.

Для дальнейшего использования, jQuery документы очень, очень хороши.

145
ответ дан rfunduk 24 November 2019 в 18:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: