У меня есть кнопка отмены в каждой строке таблицы, которая автоматически заполняется через некоторое время. L oop. $ Id разрешается правильно, но когда я нажимаю кнопку отмены, все активные строки изменяются. Я только хочу, чтобы строка, которая касается, была изменена.
Итак, через некоторое время l oop in php:
<tr id="dataTable">
<td id="nom"><?php echo $nom;?></td>
<td id="statut"><?php echo $statut;?> </td>
<td id="<?php echo $id;?>" >
<a id="<?php echo $id;?>" href="#" title="Annuler"
onclick="document.write('<?php
$queryannuler = "UPDATE wp_RDV SET statut = 'Testy' WHERE id_RDV = '".$id."'";
$resultatannuler = $connexion->query($queryannuler); ?>'); location.reload(); 'return false';">Annuler</a>
</td>
</tr>
Моя проблема в том, что столбец 'statut' находится в обновляется для всех строк, а не только для строки, в которой я нажимаю кнопку отмены. Спасибо, если вы можете помочь.
ОБНОВЛЕНИЕ Я пытался реализовать ваши различные советы с помощью ajax. Это тяжело. В оригинальном посте я не указал, что использую фреймворк Wordpress. Поэтому я изменил код @ssurli для учета wordpress
<td id="<?php echo $id;?>" >
<a id="<?php echo $id;?>" class="button delete" href="javascript:void(0)" title="Annuler"
onclick="cancelRecord('<?php echo $id; ?>')">Annuler</a>
</td>
<script>
function cancelRecord(id) {
jQuery.ajax({
type: 'post',
url: ajaxurl,
data: {id:id},
action: 'delete_rdv',
success: function(response) {
return;
},
error: function(jqXHR, status, error) {
alert('Error: Please refresh the page');
return;
},
complete: function() {
console.log('The function is hooked up');
location.reload();
console.log('The function is hooked up2');
}
});
}
И в моих функциях. php file
add_action( 'wp_ajax_delete_rdv', 'delete_rdv' );
add_action( 'wp_ajax_nopriv_delete_rdv', 'delete_rdv' );
function delete_rdv() {
$queryannuler = "UPDATE wp_RDV SET statut = 'Testy' WHERE id_RDV = '".$_POST['id']."'";
$resultatannuler = $connexion->query($queryannuler); //include connection file above
return $resultatannuler;
}
Я застрял на самом первом препятствии. Консоль отправляет сообщение об ошибке: admin. php? Page = plugin-vo c: 1 Uncaught ReferenceError: cancelRecord не определено
Но моя cancelRecord функция сразу после моя кнопка вызова, поэтому я не понимаю эту ошибку.