Перейти к содержимому


Как использовать Ajax


Сообщений в теме: 6

#1 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 08 Ноябрь 2012 - 19:51

Добрый день подскажите пожалуйста как внутри javascript использовать ajax чтоб записать результат переменную $update в базу...

Подготовка данных:
$update = "update ".DATA_TABLE."117 SET f1456=1 WHERE id='$id' "; 

Отображение:

<script type="text/javascript">

function updateSQL(){
    ???
}
</script>

Очень прошу Вашего совета.

Сообщение отредактировал mahmud: 08 Ноябрь 2012 - 20:26


#2 Гость_Roman_*

  • Гости

Отправлено 09 Ноябрь 2012 - 08:41

Подготовка
if ($_POST['update_id'])
  {
	$update_id = intval($_POST['update_id'];
	// Ваш запрос
	exit("Данные обновлены");
  }
Отображение
<script type="text/javascript">
function updateSQL() {
$.ajax({
  type: "POST",
  url: "report.php",
  data: { id: '888', update_id: '5' },
  success: function(msg) {
    alert(msg);
  }
  });
}
</script>


#3 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 09 Ноябрь 2012 - 12:57

Просмотр сообщенияRoman (09 Ноябрь 2012 - 08:41) писал:

Подготовка
if ($_POST['update_id'])
  {
	$update_id = intval($_POST['update_id'];
	// Ваш запрос
	exit("Данные обновлены");
  }
Отображение
<script type="text/javascript">
function updateSQL() {
$.ajax({
  type: "POST",
  url: "report.php",
  data: { id: '888', update_id: '5' },
  success: function(msg) {
	alert(msg);
  }
  });
}
</script>

Извините пожалуйста я не понял этой строки
data: { id: '888', update_id: '5' },

Заранее спасибо!

Сообщение отредактировал mahmud: 09 Ноябрь 2012 - 13:07


#4 Гость_Roman_*

  • Гости

Отправлено 10 Ноябрь 2012 - 07:12

Эта строчка - данные, которые передаются на сервер. Фактически, при получении данных вид
$_POST['id'] = 888;
$_POST['update_id'] = 5;

id - это ид Вашего отчёта, в данном случае, а update_id - номер строки, которую нужно обновить. Вместо '5' можно вставить переменную JavaScript.

#5 Tim

    Активный участник

  • Пользователи
  • PipPipPip
  • 127 сообщений
  • Пол:Мужчина

Отправлено 12 Ноябрь 2012 - 10:40

Просмотр сообщенияRoman (10 Ноябрь 2012 - 07:12) писал:

Эта строчка - данные, которые передаются на сервер. Фактически, при получении данных вид
$_POST['id'] = 888;
$_POST['update_id'] = 5;

id - это ид Вашего отчёта, в данном случае, а update_id - номер строки, которую нужно обновить. Вместо '5' можно вставить переменную JavaScript.

Спасибо !

#6 wondertalik

    Активный участник

  • Пользователи
  • PipPipPip
  • 1 159 сообщений
  • Пол:Мужчина
  • Город:Кривой Рог, Украина

Отправлено 12 Февраль 2014 - 05:16

Имеется запрос ajax

$.ajax({
				   type: 'POST',
				   url: 'report.php',
				    data: {id: 71, id_tr: id_tr, action: 'update_tr', type: type, count_w: count_w, tips: tips},
				    success: function(data) {
					    //в случае успешного запроса закрываем окно
				    }
			    });

if(isset($_POST['action']) && $_POST['action'] == "update_tr") {
    $data = array();
...
    exit();
}

В итоге вижу вот это "Unprotected data send! Use csrf.". Что нужно сделать, чтобы код отработал?

#7 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 12 Февраль 2014 - 09:23

Во всех формах КБ присутствует это:

<input type="hidden" name="csrf" value="{$csrf}">

Соответственно, в запросе ajax должна быть аналогичная передача.





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных