#php #jquery #ajax
#php #jquery #ajax
Вопрос:
Как я могу скрыть уведомление с помощью ajax? Я хочу нажать кнопку и передать, чтобы удалить мое уведомление с идентификатором 5.
if(isset($_POST['notification']))
{
$id = $_GET['hidenotification'];
$QUERY = "UPDATE `Notifications` SET `ActiveNotification` = 0 WHERE `id` = '$id'";
$connection->query($QUERY);
}
$notification_id = 5;
<a href='#' onClick='HideNotification($notification_id);'>Hide this notification</a>
function HideNotification(id)
{
jQuery.ajax({
type: "POST",
url: "index.php",
data: 'hidenotification=' id,
cache: false,
success: function(response)
{
alert("Notification deleted.");
}
});
}
Моя проблема в том, что когда я нажимаю кнопку, чтобы запросить скрытое уведомление, моя таблица не обновляется..
Комментарии:
1.
if(isset($_POST['notification']))
это никогда не бывает правдой2. Вы передаете имя переменной ‘hidenotification’, но вы проверяли, если (isset($_POST [‘notification’])){ } это никогда не БЫВАЕТ ПРАВДОЙ, измените это на if(isset($ _POST [‘hidenotification’])){ }
3. он не работает..
Ответ №1:
Вы можете просто скрыть это с hide
помощью функции Jquery:
<a class="notification" href='#' onClick='HideNotification($notification_id);'>Hide this notification</a>
function HideNotification(id)
{
jQuery.ajax({
type: "POST",
url: "index.php",
data: 'hidenotification=' id,
cache: false,
success: function(response)
{
$('.notification').hide()
}
});
}
Комментарии:
1. Я хочу запрашивать в mysql не только на странице.
2. Нет, когда я нажимаю на кнопку, мое уведомление не скрывается, даже после обновления страницы.
3.
alert
Когда-либо срабатывал ваш первоначальный вопрос? Выполняется ли ajax? Есть ли у вас какие-либо ошибки в консоли?4. $(‘.notification’).hide() также должен работать. Вы добавили
notification
класс в привязку?
Ответ №2:
Просто, если вы хотите скрыть свою кнопку после получения ответа.
попробуйте следующий код…
Html-код
$notification_id = 5;
<a href='javascript:void(0);' class='notification' id="<?=$notification_id?>">Hide this notification</a>
Код Jquery
$(".notification").click(function(){
var obj=$(this);
jQuery.ajax({
type: "POST",
url: "index.php",
data: {hidenotification: obj.attr('id')},
cache: false,
success: function(response)
{
obj.hide()// if you want to only hide button
obj.remove() //if you want to remove button
}
});
});
Php-код
if(isset($_POST['hidenotification']))
{
$id = $_POST['hidenotification'];
$QUERY = "UPDATE `Notifications` SET `ActiveNotification` = 0 WHERE `id` = '$id'";
$connection->query($QUERY);
}
Комментарии:
1. Моя проблема в том, что когда я нажимаю кнопку, чтобы запросить скрытое уведомление, моя таблица не обновляется..
Ответ №3:
function HideNotification(id)
{
jQuery.ajax({
type: "POST",
url: "index.php",
data: {hidenotification:id},
cache: false,
success: function(response)
{
alert("Notification deleted.");
}
});
}
Ответ №4:
Вы можете использовать следующий код для скрытия уведомлений и обновления в таблице базы данных через ajax php. И используйте $_REQUEST ИЛИ $ _POST, если вы использовали метод post в ajax.
<a class="notification" id="<?php echo $notification_id;?>" href='#' onClick="HideNotification('<?php echo $notification_id;?>');">Hide this notification</a>
function HideNotification(id)
{
jQuery.ajax({
type: "POST",
url: "index.php",
data: {hidenotification:id},
cache: false,
success: function(response)
{
jQuery('#' id).hide();
}
});
}
Комментарии:
1. Можете ли вы сообщить мне, что такое ошибка? Вы уверены, что библиотека jquery включена?
Ответ №5:
просто продолжайте
$id = $_POST['hidenotification'];
$QUERY = "UPDATE `Notifications` SET `ActiveNotification` = 0 WHERE `id` = '$id'";
$connection->query($QUERY);
вместо этого.Удалите if(isset($_POST['notification']))
и используйте post.