Есть ли способ записать просмотр страницы при использовании начальной загрузки - PullRequest
0 голосов
/ 14 февраля 2019

Есть ли способ записи о том, что пользователь на моем сайте, который нажимает на кнопку "подробнее" на модальной стороне, записывается в базу данных.Я пытаюсь понять, какие стипендии больше всего интересуют студентов, и записать эти данные.Страница создается с использованием MySQL, PHP и начальной загрузки, поэтому я понимаю, что существует проблема с отправкой данных обратно на сервер, поскольку страница уже была обработана сервером.

Вот скриншот части страницы.

enter image description here

Я понимаю, что PHP и javascript работают с данными по-разному, но я думаю, что мой вопрос заключается в том, как я могу это сделать, или это дажевозможно использование существующего PHP и начальной загрузки.Сначала я хотел прикрепить событие к кнопке «больше информации», но затем необходимо обновить страницу, чтобы получить данные на сервер, что может запутать студентов, использующих сайт.

Любая помощь в том, как это можно сделать, будет принята с благодарностью.

Итак, вот код, который у меня есть.

Модальный код: (* Я не включил все это, поскольку я не считаю это необходимым)

<!-- Trigger the modal with a button -->
<button type="button" onclick="saveData(<? echo $row['id'].",". "1";  ?>)" 
**class="btn btn-info btn-lg" id="savedata" data-toggle="modal" data- 
target="#myModal<? echo $row['id']; ?>">More Information.</button>**

<!-- Modal -->
<div id="myModal<? echo $row['id']; ?>" class="modal fade" role="dialog">
<div class="modal-dialog">

А вот код Ajax

<script>
function window.saveData(){
var name=$('#savedata').val();


$.ajax({
   type:"post",
   url:"includes/post_scholarship_count.php",
   data:"nm="+name,
   success: function(msg){
    alert('Success Insert data');
   }

});
}
</script>

Когда я проверяю страницу, запущенную на сервере, я получаю сообщение об ошибке

Uncaught ReferenceError: saveData не определен в HTMLButtonElement.onclick (university.php: 182)

Что:

<button type="button" onclick="saveData(826,1)" class="btn btn-info btn-lg" 
id="savedata" data-toggle="modal" data-target="#myModal826">More Information. 
</button>

Я предполагаю, что проблема связана с модальной кнопкой, но я даже не уверен, что вы можете сделать это таким образом.

Еще раз спасибо за поиск.

1 Ответ

0 голосов
/ 14 февраля 2019

Может быть, вы можете использовать Ajax для этого.Создайте страницу или функцию для получения запроса с помощью php.И затем, когда вы нажимаете кнопку, вы отправляете сообщение в этот файл php

//ajax script
$.post( "url_to_file.php", { name: value} ).done(function( 
    //console.log(data);
})


//php script in url_to_file.php
if(isset($_POST['name']){
    $value = $_POST['name'];
    exit();
}
...