2014-12-23 2 views
0

У меня есть таблица, для которой данные вытаскиваются из базы данных, и пользователи могут редактировать данные в каждой ячейке. Итак, когда пользователь редактирует поле таблицы, как мне следует обновлять базу данных? Я должен упомянуть для редактирования, я использую метод prompt(). Должен ли я использовать ajax? Я знаю, что мой вопрос настолько общий, но мне просто нужно понять. БлагодаряОбновление базы данных при редактировании поля в таблице

Обновление вопрос мю:

Это часть моего кода: (Моя таблица имеет больше клеток, следующий только одна клетка моего стола).

  while($array=mysql_fetch_array($res)) 

        { 
         <tr> 

         <td >  
         <center> 
            <?php 
             $var=$array['Legacy Data Conversion Required?']; 
             if($var) 
              echo 
              "<p id=$idl>" . $var . "</p>" . "<img style ='cursor:pointer; ' class='onInput' src='http://nimbuzz007.hexat.com/icon4/icon%2015.png' id='input_img' onclick='legacyFunction($idl)'>"; 

             else 
              echo 
               "<p id=$idl>" . " " . "</p>" . "<img style ='cursor:pointer; ' class='onInput' src='http://nimbuzz007.hexat.com/icon4/icon%2015.png' id='input_img' onclick='legacyFunction($idl)'>" ;           
            ?> 
         </center> 
        </td> 
      </tr> 
     } 

и это является частью яваскрипта раздела:

function legacyFunction($idl) { 
var data1 = prompt("Legacy Data Conversion Required?Yes/No"); 
if (data1 != null) { 
    document.getElementById($idl).innerHTML = 
    data1; 
    } 
}; 

Таким образом, когда пользователь нажимает на изображение правка будет всплывающее сообщение с полем ввода (я использовал подсказку() метод) , и после того, как пользователь нажмет на кнопку OK, данные в ячейке таблицы изменятся, но мне также необходимо обновить базу данных. Итак, как я могу это сделать? Я имею в виду, после каких действий я должен вызвать функцию ajax для обновления базы данных?

ответ

1

Было бы хорошо, если бы вы могли предоставить свой код. Как редактируется ячейка таблицы? Является ли это с содержимым съедобным или текстовым полем или текстовым полем? Вот мое предложение из предоставленной вами информации. Сделайте это: <input type="text" oninput="save(this.value);">

function save(textValue) 
{ 
    //put your ajax request here 
} 

Если это не работает, то просто скажите мне, и я попробую еще раз. Удачи :-) С Рождеством!

+0

Это обновит на каждое нажатие клавиши, будет не так ли? – ANeves

+0

Да включая ключ удаления. Не проблема. – www139

+0

Запуск базы данных в оба конца на каждое нажатие клавиши мне плохо. Я бы предпочел включить его только в [change] (https://developer.mozilla.org/en-US/docs/Web/Events/change). – ANeves

0

Создайте форму и установите атрибут action этой формы на ваш файл на стороне сервера, такой как writeToDatabase.php. В вашей форме у вас есть все необходимые входы и поля, которые вы хотите обновить в своей базе данных. Вы можете отправить форму через AJAX или просто методом POST/GET. Предполагая, что вы используете PHP для своей серверной части, установите соединение с вашей базой данных и обновите/запишите данные в базу данных. Здесь подробнее:

Подключение к базе данных: http://www.w3schools.com/php/php_mysql_connect.asp

Форма Handling: http://www.w3schools.com/php/php_forms.asp

Обновление данных: http://www.w3schools.com/php/php_mysql_update.asp

Смежные вопросы