<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Не работает Ajax.
29.06.2014 18:49:17 Не работает Ajax. Сообщение #1
gospelwork

gospelwork

Новичок

Новичок

Дата регистрации:
29.06.2014 18:33:18

Сообщений: 3

Добрый день уже месяц не могу доработать одну функцию.
function plus_tr(){
var kol = Number($("#kol_wood").val();
  var l = Number($("#l_wood").val();
  var d = Number($("#d_wood").val();
 $.ajax({
  url: "re.php",
  type: "POST",
  data: ({l: l, d: d});
  dataType: "text",
  beforeSend: funcB,
  success:
var v = data * kol;
$("#prihod_breven_entery".append("<tr><td>" + l + "</p></td><td>" + d + "</p></td><td>" + kol + "</p></td><td>" + (data).toFixed(3) + "</p></td><td>" + (v).toFixed(3) + "</tr>";
 });
   
  });
}
Она обрабатывает следующие поля:
<table id="prihod_breven_entery" border="solid">
<tr>
<td>Длина бревна</td>
<td>Диаметр бревна</td>
<td>Кол-во бревен</td>
<td>Объём 1 бревна</td>
<td>Общий объём</td>
</tr>
<tr id="intro">
<td>
<input id="l_wood" type="text"  />
</td>
<td>
<input id="d_wood" type="text" />
</td>
<td>
<input id="kol_wood" type="text"  />
</td>
</tr>
</table>
<input type="button" onclick="plus_tr()" value="+" name="ent" /> // добавляет еще одну строку к таблице.
Обработчик re.php:
<?php
function printResultSet ($result_set){
$l = $_POST["l"];
while (($row = $result_set->fetch_assoc()) != false) {
global $v_1;
$v_1 = $row[$l];
}
}
$l = $_POST["l"];
$d = $_POST["d"] - 10;
$mysqli = new mysqli("localhost", "root", "", "kub";
$mysqli->query("SET NAMES 'utf8'";
$result_set = $mysqli->query("SELECT * FROM `kubaturnik` ORDER BY $l LIMIT $d, 1"; // запрос к БД верен, выдает правильный результат, проверял
printResultSet($result_set);
if ($_POST['l'] == 1) echo json_encode($result_set);
$mysqli->close();
?>
Помогите пожалуйста, все уже перепробовал, не получается.
Профиль
02.07.2014 14:56:55 Не работает Ajax. Сообщение #2
tikkiwiki

tikkiwiki

Модератор

Модератор

Дата регистрации:
15.11.2013 15:36:59

Сообщений: 194

Напишите, хоть, что не получается и, что должно быть?
Профиль
02.07.2014 15:05:34 Не работает Ajax. Сообщение #3
gospelwork

gospelwork

Новичок

Новичок

Дата регистрации:
29.06.2014 18:33:18

Сообщений: 3

За эти 2 дня почти получается. Для отправки запроса использовал метод $.get, понял, что отправлять нужно текстовые данные. Ответ от сервера приходит! Но, к примеру, вписываю команду alert(data); выдает нужное число, в кавычках. Как избавиться теперь от кавычек, не знаю. Вот скрин на всякий http://joxi.ru/qcCzU_3JTJBfAwBiTZQ
Профиль
04.07.2014 14:37:06 Не работает Ajax. Сообщение #4
gospelwork

gospelwork

Новичок

Новичок

Дата регистрации:
29.06.2014 18:33:18

Сообщений: 3

Все! Доработал. Все работает, как надо.
$("#plus_tr".click(function(){
var kol = Number($("#kol_wood".val());
  var l = $("#l_wood".val();
  var d = $("#d_wood".val();
$.get("re.php", {l: l, d: d}, function(data){
data = JSON.parse(data);
var v_1 = data.replace(/,/, '.';
var v = Number(v_1) * kol;
  $("#prihod_breven_entery".append("<tr><td>" + l + "</p></td><td>" + d + "</p></td><td>" + kol + "</p></td><td>" + v_1 + "</p></td><td>" + v.toFixed(3) + "</tr>";
 
})
});
Обработчик:
<?php
function printResultSet ($result_set){
$l = $_GET["l"];
while (($row = $result_set->fetch_assoc()) != false) {
global $v_1;
$v_1 = $row[$l];
}
}
$l = $_GET["l"];
$d = $_GET["d"] - 10;
$mysqli = new mysqli("localhost", "root", "", "kub";
$mysqli->query("SET NAMES 'utf8'";
$result_set = $mysqli->query("SELECT * FROM `kubaturnik` ORDER BY $l LIMIT $d, 1";
printResultSet($result_set);
echo json_encode($v_1);
$mysqli->close();
?>
Кратко объясню в чем суть работы скрипта. Есть таблица ГОСТ "Объём круглого леса", в ней более 1000 ячеек. Я занес ее в MySQL. Пользователь на сайте вводит длину, диаметр и количество бревен. На сервер в текстовом формате передается длина и диаметр, по ним из БД делается выборка объема одного бревна и возвращается в документ. Потом по этим данным вычисляется общий объём бревен и добавляется в таблицу уже готовая строка с данными.
Профиль