Использование AJAX для динамического обновления текста из базы данных
Я действительно изо всех сил пытался изучить AJAX, чтобы я мог просто динамически обновлять свои веб-страницы новым текстом из базы данных, потому что кажется, что все учебники по Ajax являются более сложными примерами, которые включают запись данных в базу данных.
Страница, над которой я работаю, - это просто PHP-скрипт, который требует регистрации и идентификационного номера для публикации на нем, и он отображает сообщения (которые часто обновляются) из базы данных. В настоящее время у меня есть кнопка «Обновить сообщения» в верхней части моей страницы, которая отправляет команду для обновления сообщений, но для работы требуется обновление страницы.
Я просто хотел бы использовать ajax для динамического обновления сообщений. Вот что я написал до сих пор, основываясь на том, что я нашел вИспользование Jquery Ajax для извлечения данных из Mysql , но это не работает, так как я не знаю, как передать регистрацию и идентификационный номер в качестве параметров в скрипт php с помощью ajax и отобразить ответ.
Обратите внимание, чтоsendPushNotification
Функция не связана и работает правильно (используется для отправки команды на обновление сообщений).
readmessages.php
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Inbox</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
});
function sendPushNotification(id){
var data = $('form#'+id).serialize();
$('form#'+id).unbind('submit');
$.ajax({
url: "send_message.php",
type: 'GET',
data: data,
beforeSend: function() {
},
success: function(data, textStatus, xhr) {
$('.txt_message').val("");
},
error: function(xhr, textStatus, errorThrown) {
}
});
return false;
}
function updateText(registration, rowid) {
$.ajax({ //create an ajax request to readmessages.php
type: "GET",
url: "readmessages.php",
dataType: "html", //expect html to be returned
success: function(response){
$("#responsecontainer").html(response);
}
});
}
</script>
</head>
<body>
<?php
// receive data from HTML readmessages request
$rName=$_POST["registration"]; //POST information required to read information from the database
$rowId=$_POST["rowid"];
require_once 'access.php';
if (!userIsLoggedIn()) {
include 'login.php';
exit();
}
include_once './db_functions.php';
$db = new DB_Functions();
?>
<form id="<?php echo $rowId ?>" name="" method="post" onsubmit="return sendPushNotification('<?php echo $rowId ?>')">
<input type="hidden" name="message" value="readmessages" />
<input type="hidden" name="regId" value="<?php echo $rName ?>"/>
<input type="submit" class="send_btn" value="Update Messages" onclick="return updateText(<?php echo $rName ?>, <?php echo $rowId ?>);"/> //Attempts to call function to update text once button is pressed (not functioning)
<?php
$messagelist = $db->getInbox($rName); //calls the database to retrieve messages
echo nl2br($messagelist); //Displays message list that I want to update
include './logout.php';
?>
</body>
</html>
Любая помощь будет принята с благодарностью!
РЕДАКТИРОВАТЬ: Обновлена строка, содержащая правильные кавычки:
<input type="submit" class="send_btn" value="Update Messages" onclick="return updateText('<?php echo $rName ?>', '<?php echo $rowId ?>')"/>