У меня есть MySQL таблица активности, которая имеет три столбца, а именно — идентификатор, имя клиента, статус; и я отображаю только два столбца, а именно -, имя клиента и статус, используя таблицы данных.
Теперь я хочу обновить значение моего имени клиента в базе данных, а также динамически отображаться в моей таблице данных при его редактировании. Поэтому для этого я использовал jeditable с datatable, но теперь я не знаю, как получить идентификатор и значение текущей ячейки и передать их через jeditable на мою страницу php для их редактирования. Пожалуйста, помогите мне.
Заранее спасибо.
Вот что я пробовал до сих пор
HTML-код
<tbody >
<?php
$sql= "SELECT * FROM `activity` ORDER BY clientname asc";
$result = mysqli_query($conn,$sql);
while($row = mysqli_fetch_assoc($result))
{
$id = $row['id'];
$name = $row['clientname'];
echo "<tr id=".$row['id']."class='edit_tr'>";
echo $id;
echo " <td class='edit'>".$row['clientname']."</td>
<td>".$row['status']."</td>
</tr>";
}
?>
</tbody>
JQuery код
<script>
$(document).ready(function() {
/* Init DataTables */
var oTable = $('#clientsheet').dataTable();
/* Apply the jEditable handlers to the table */
$('td', oTable.fnGetNodes()).editable( 'save.php', {
tooltip : 'Click cell to edit value...',
indicator : 'Saving...',
style : 'display:block;',
submit : 'OK',
cancel : 'Cancel',
data : " {'keyid':'id','keyname':'name'}",
type : 'select',
"Callback": function( sValue, x) {
var aPos = oTable.fnGetPosition( this );
oTable.fnUpdate( sValue, aPos[0], aPos[1]);
/* Redraw the table from the new data on the server */
oTable.fnClearTable( 0 );
oTable.fnDraw();
},
"submitdata": function ( value, settings ) {
var aPos2 = oTable.fnGetPosition( this );
var id2 = oTable.fnGetData( aPos2[0] );
return {
"row_id": this.parentNode.getAttribute('id'),
"id2": id2[0],
"column": oTable.fnGetPosition( this )[ 2 ]
};
},
"height": "14px",
} );
} );
</script>
PHP-код
<?php
include('db.php');
$sql = "UPDATE `activity` SET clientname = '".$_POST['keyname']."' WHERE `id` = '".$_POST['id']."' ";
if($nameresult = $conn->query($sql)){
echo "successful";
}
else{
echo "failed";
}
?>
Пожалуйста, помогите мне ..
заранее спасибо
Задача ещё не решена.
Других решений пока нет …