Имеется следующая таблица:
var DynamicTable = (function(GLOB) {
var RID = 0;
return function(tBody) {
if (!(this instanceof arguments.callee)) {
return new arguments.callee.apply(arguments);
}
tBody.onclick = function(e) {
var evt = e || GLOB.event,
trg = evt.target || evt.srcElement;
if (trg.className && trg.className.indexOf("add") !== -1) {
_addRow(trg.parentNode.parentNode, tBody);
} else if (trg.className && trg.className.indexOf("del") !== -1) {
tBody.rows.length > 1 && _delRow(trg.parentNode.parentNode, tBody);
}
};
var _rowTpl = tBody.rows[0].cloneNode(true);
var _correctNames = function(row) {
var elements = row.getElementsByTagName("*");
for (var i = 0; i < elements.length; i += 1) {
if (elements.item(i).name) {
if (elements.item(i).type &&
elements.item(i).type &&
elements.item(i).type === "radio" &&
elements.item(i).className &&
elements.item(i).className.indexOf("glob") !== -1) {
elements.item(i).value = RID;
} else {
elements.item(i).name = RID + "[" + elements.item(i).name + "]";
}
}
}
RID++;
return row;
};
var _addRow = function(before, tBody) {
var newNode = _correctNames(_rowTpl.cloneNode(true));
tBody.insertBefore(newNode, before.nextSibling);
};
var _delRow = function(row, tBody) {
tBody.removeChild(row);
};
_correctNames(tBody.rows[0]);
};
})(this);
<head>
<meta charset="utf-8">
<title>5.1.1 Quality Goals </title>
<link rel='stylesheet prefetch' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css'>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<center>
<h2>5.1.1 Quality Goals </h2>
</center>
<form method="post" action="">
<table border="" cellspacing="0" cellpadding="15" width="100%" class="shap2">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Goal</th>
<th scope="col">Priority</th>
<th scope="col">Action Plan to Achieve the Goal</th>
<th scope="col">ASPICE process mapping</th>
<th scope="col"> </th>
</tr>
</thead>
<tbody id="dynamic">
<tr>
<td>
<label>
<input type="text" name="#" >
</label>
</td>
<td>
<label>
<input type="text" style="width: 550px; height: 25px;" name="goal" placeholder="Define quality goal, e.g. Each mark in Customer Satisfaction report have to be greater then 6" value="">
</label>
</td>
<td>
<label>
<input type="text" name="priority" style="width: 320px; height: 25px;" placeholder="Specifies the threshold/tolerance level allowed, e.g." value="">
</label>
</td>
<td>
<label>
<input type="text" name="action" placeholder="Define the action plan; and specify the monitoring time frame to achieve desired quality and quality checkpoints for associated activities, e.g.
Request and analyze Customer Satisfaction each half year, and take corrective actions (if needed)" value="">
</label>
</td>
<td>
<label>
<select name="aspice[]">
<option value="ACQ.4">ACQ</option>
<option value="SYS.2">SYS</option>
<option value="SYS.3">SYS</option>
<option value="SWE.1">SWE</option>
<option value="SWE.2">SWE</option>
<option value="SWE.3">SWE</option>
<option value="SWE.4">SWE</option>
<option value="SWE.5">SWE</option>
<option value="SWE.6">SWE</option>
<option value="SYS.4">SYS</option>
<option value="SYS.5">SYS</option>
<option value="MAN.3">MAN</option>
<option value="SUP.1">SUP</option>
<option value="SUP.8">SUP</option>
<option value="SUP.9">SUP</option>
<option value="SUP.10">SU</option>
</select>
</label>
</td>
<td>
<button type="button" class="add">+</button>
<button type="button" class="del">-</button>
</td>
</tr>
</tbody>
</table>
<strong>Please fill out this section </p></strong>
<p><textarea cols="60" rows="5" name="comment" contenteditable="true"></textarea></p>
<div id="anim">
<span class="tooltip" data-tooltip="Please don't forget to add a comment if this section is not applicable ">?</span>
</div>
<div align="">
<p><input type="submit" name="submit" size="50" class="searchSbmFl" value="Submit">
<p>
</div>
</form>
<script src="dynamicTable.js"></script>
<script>
new DynamicTable(document.getElementById("dynamic"));
</script>
Как изменить обработчик, чтобы заносились данные в базу? В том числе из списка
if ($_POST) {
$mysqli = new mysqli("localhost", "root", "root", "projectplan");
$sql = 'INSERT INTO `table_5.1`(`#`,`goal`,`priority`,`action`,`aspice`) VALUES ';
for ($i = 0; $i < count($_POST['#']); $i++) {
$sql .= ' ("'.
$mysqli->real_escape_string($_POST['#'][$i]) .'","'.
$mysqli->real_escape_string($_POST['goal'][$i]) .'","'.
$mysqli->real_escape_string($_POST['priority'][$i]) .'","'.
$mysqli->real_escape_string($_POST['action'][$i]) .'","'.
$mysqli->real_escape_string($_POST['aspice'][$i]) .'"),';
}
$sql = rtrim($sql, ',');
$mysqli->query($sql);
}
?>
У меня есть API в котором нужно возвращать ошибки клиенту с помощью исключенийНапример, клиент запросил несуществующий документ и приложение...