У меня есть таблица, в которой я изменяю заголовок таблицы и ее содержимое, используя PHP значение идентификатора сеанса, но теперь я хочу использовать AJAX, в котором есть кнопка, по которой нажимается кнопка и запрашивается таблица через файл JS и в бэкэнде выполняется файл PHP, и этот файл PHP отправляет файл JSON и JS, анализирует таблицу и отображает результат.
Но проблема в том, что я не могу используйте PHP Session в JS файле. Пожалуйста, объясните, как мне перейти к изменяющемуся заголовку таблицы с соответствующим содержимым строки.
Я прилагаю часть кода HTML с кнопкой для вызова и запуска страниц сервера, а также ранее работал с сеансом PHP.
Что-то должно быть сделано в файле viewleadtable.js
, который может получить, используя вход в систему с использованием PHP Session.
Хотя таблица генерируется, но не проверяет, вошел ли в систему администратор или нормальный пользователь. Также имеется ошибка консоли для доступа к переменной admin
.
Просмотр таблицы интересов
Просмотр таблицы кампании
Ниже приведена часть кода dashboard.html
<section class="operation" id="view_all_lead_Campaign" style="width: 100%;margin: 0 auto; display: none;">
<!-- Main Tables Campaign and Lead Table -->
<div class="row">
<!-- MAIN TABLE-->
<div class="col" >
<button class="viewMainTable" name='viewMainTable' id='viewMainTableButton' >Lead Table</button>
<button class="viewCampaignTable" name='viewCampaignTable' id='viewCampaignTableButton' >Campaign Table</button>
<div class="row">
<div class="col">
<div id='viewmaintable' style="margin-top: 10px;">
</div>
</div>
</div>
<div class="row">
<div class="col">
<div id="viewcampaigntable" style="margin-top: 10px;">
</div>
</div>
</div>
<div class="row">
<div class="col span-1-of-3">
<label></label>
</div>
<div class="col span-2-of-3">
<div class="message_box" style="margin-left: 60px;">
</div>
</div>
</div>
</section>
В файле viewleadtable.js
Но я пытаюсь использовать PHP внутри него , Также только другая часть выполняет
$(document).ready(function() {
var delay = 1000;
$('#viewMainTableButton').click(function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "./server/viewleadtable.php",
beforeSend: function() {
$('.message_box').html(
'<img src="tenor.gif" width="40" height="40"/>'
);
},
success: function(data) {
var result = $.parseJSON(data);
var admin = '<?php echo $_SESSION["Admin"] ?>';
var user_id = '<?php echo $_SESSION["User_Id"] ?>';
console.log(result);
if(admin == 1){
var string = '<table><thead><th>#</th><th>Lead Id</th><th>Name</th><th>Website</th><th>Linkedin</th><th>Lead Description</th><th>Owner Notes</th><th>Admin Notes</th><th>Added By</th><th>Last Contact Date</th><th>Next Contact Date</th><th>Lead Status</th><th>Details</th></thead><tbody>';
/* from result create a string of data and append to the div */
var i = 1;
$.each(result, function(key, value) {
string += "<tr><td>" + i + "</td><td>" + value['Lead_Id'] + "</td><td>" + value['FirstName']+" "+value['LastName'] + "</td><td>" + value['Website'] + "</td><td>" + value['Linkedin'] + "</td><td>" + value['LeadDescription'] + "</td><td>" + value['OwnerNotes'] + "</td><td>" + value['AdminNotes'] + "</td><td>"+ value['LeadAddedBy']+"<br>Date/Time: "+value['LeadAddedOn'] + "</td><td>" + value['LastContactDate'] + "</td><td>" + value['NextContactDate'] + "</td><td>" + value['LeadStatus'] + "</td><td>" + "<a href='#'>Click Here</a></td></tr>";
i = i + 1;
});
string += '</tbody></table>';
}else{
var string = '<table><thead><th>#</th><th>Lead Id</th><th>Name</th><th>Website</th><th>Linkedin</th><th>Lead Description</th><th>Owner Notes</th><th>Last Contact Date</th><th>Next Contact Date</th><th>Lead Status</th><th>Details</th></thead><tbody>';
/* from result create a string of data and append to the div */
var i = 1;
$.each(result, function(key, value) {
string += "<tr><td>" + i + "</td><td>" + value['Lead_Id'] + "</td><td>" + value['FirstName']+" "+value['LastName'] + "</td><td>" + value['Website'] + "</td><td>" + value['Linkedin'] + "</td><td>" + value['LeadDescription'] + "</td><td>" + value['OwnerNotes'] + "</td><td>" + value['LastContactDate'] + "</td><td>" + value['NextContactDate'] + "</td><td>" + value['LeadStatus'] + "</td><td>" + "<a href='#'>Click Here</a></td></tr>";
i = i + 1;
});
string += '</tbody></table>';
}
$("#viewmaintable").html(string);
$('.message_box').html('');
}
});
});
});
В viewleadtable.php
<?php
// send a JSON encoded array to client
include('connection.php');
$selectSQL = "SELECT * FROM tbl_main_lead_info ";
$result_array = array();
$result = $conn -> query ($selectSQL);
// If there are results from database push to result array
if(mysqli_num_rows($result) > 0){
while ($row = mysqli_fetch_array($result)) {
array_push($result_array, $row);
}
}
echo json_encode($result_array);
$conn->close();
?>
Точно так же у меня есть код для просмотра таблицы кампании, но проблема в том, что я не могу выполнить if else условие, использующее PHP переменную сеанса.
Вкратце ниже необходимо изменить объект, так как он не работает.
success: function(data) {
var result = $.parseJSON(data);
var admin = '<?php echo $_SESSION["Admin"] ?>';
var user_id = '<?php echo $_SESSION["User_Id"] ?>';
console.log(result);
if(admin == 1){
var string = '<table><thead><th>#</th><th>Lead Id</th><th>Name</th><th>Website</th><th>Linkedin</th><th>Lead Description</th><th>Owner Notes</th><th>Admin Notes</th><th>Added By</th><th>Last Contact Date</th><th>Next Contact Date</th><th>Lead Status</th><th>Details</th></thead><tbody>';
/* from result create a string of data and append to the div */
var i = 1;
$.each(result, function(key, value) {
string += "<tr><td>" + i + "</td><td>" + value['Lead_Id'] + "</td><td>" + value['FirstName']+" "+value['LastName'] + "</td><td>" + value['Website'] + "</td><td>" + value['Linkedin'] + "</td><td>" + value['LeadDescription'] + "</td><td>" + value['OwnerNotes'] + "</td><td>" + value['AdminNotes'] + "</td><td>"+ value['LeadAddedBy']+"<br>Date/Time: "+value['LeadAddedOn'] + "</td><td>" + value['LastContactDate'] + "</td><td>" + value['NextContactDate'] + "</td><td>" + value['LeadStatus'] + "</td><td>" + "<a href='#'>Click Here</a></td></tr>";
i = i + 1;
});
string += '</tbody></table>';
}else{
var string = '<table><thead><th>#</th><th>Lead Id</th><th>Name</th><th>Website</th><th>Linkedin</th><th>Lead Description</th><th>Owner Notes</th><th>Last Contact Date</th><th>Next Contact Date</th><th>Lead Status</th><th>Details</th></thead><tbody>';
/* from result create a string of data and append to the div */
var i = 1;
$.each(result, function(key, value) {
string += "<tr><td>" + i + "</td><td>" + value['Lead_Id'] + "</td><td>" + value['FirstName']+" "+value['LastName'] + "</td><td>" + value['Website'] + "</td><td>" + value['Linkedin'] + "</td><td>" + value['LeadDescription'] + "</td><td>" + value['OwnerNotes'] + "</td><td>" + value['LastContactDate'] + "</td><td>" + value['NextContactDate'] + "</td><td>" + value['LeadStatus'] + "</td><td>" + "<a href='#'>Click Here</a></td></tr>";
i = i + 1;
});