Это моя HTML-форма:

<form name="input" action="html_form_action.asp" method="get">
   <input type="checkbox" id="mycheckbox">Don't show me again<br>
   <input type="submit" id="Submit">
</form> 

У меня есть таблица, называется: "mytable". эта таблица содержит: имя (строка), поле (логическое значение).

Я пытался сделать следующее: когда пользователь установил флажок don't show me again, я хочу обновить поле таблицы (предполагая строку с id = 6).

Постскриптум коробка таблицы единиц в ложь.

Поэтому я должен сделать что-то вроде:

$("#submit").click(function() {
    if($("#mycheckbox").is(':checked')) {
        //here I have to update the table in the database
    }
});

Как мне это сделать?

Я нашел примеры с php, но я не хочу делать это с php.

ОБНОВИТЬ:

Исходя из ваших ответов, я хочу сделать это с помощью Ruby-on-rails.

Я нашел это .

update_sql = "update mytable set box = TRUE where id = 6"
affected_rows = Job.connection.update(update_sql)

Любая помощь приветствуется!

0
Alon Shmiel 4 Фев 2013 в 13:36

4 ответа

Лучший ответ

Вам нужно создать контроллер, который принимает запрос ajax, но сначала обновите js до этого.

# js
$("#submit").click(function() {
  $.ajax({
    url: '/my_tables/' + <id of resource to update>,
    type: 'PUT',
    data: { my_table: { box: $("#mycheckbox").is(':checked') } }
  });
});

Создать контроллер с именем MyTablesController

# my_tables_controller.rb
class MyTablesController < ActionController::Base
  def update
    @my_table = MyTable.find params[:id]
    @my_table.update_attributes params[:my_table]
    # do something else here like a redirect ...
  end
end

В этом суть Если вы не можете заставить его работать, возможно, вам придется начать с более базовых руководств. Удачи!

1
jvnill 4 Фев 2013 в 09:59
$("#submit").click(function() {
    if($("#mycheckbox").is(':checked')) {
        $.ajax({
             url: 'post.php',
             cache: false,
             success: function() {
                  alert("done");
             }
        });
    }
});

Вы можете использовать $.ajax для обновления вашей таблицы в базе данных. Просто создайте post.php файл и настройте там запрос, который обновляет таблицу.

Кроме того, PHP использует mysqli для подключения к базе данных в последних версиях. mysql_ функции устарели.

1
Muhammad Talha Akbar 4 Фев 2013 в 09:40

К сожалению, вам нужен какой-то серверный скрипт, такой как php, для связи с mySQL :(

Запрос MySQL изначально из JQuery без необходимости PHP и т. Д.

1
Community 23 Май 2017 в 12:27

На сервере вы можете использовать любой язык, который вам нравится (даже JavaScript), но для обработки необходим код на стороне сервера HTTP-запрос (который вы можете сделать из JavaScript с помощью XMLHttpRequest) и взаимодействовать с базой данных.

(Примечание: «любой язык, который вам нравится» ограничен тем, что установлено или что вы можете установить на свой сервер (или сервер, на который вы переходите).)

1
Quentin 4 Фев 2013 в 09:44