передать значение $ _SESSION и другие входные данные (выбрать) из jQuery в файл saveindb. php - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть несколько полей выбора и идентификатор сеанса, которые мне нужно передать на лету в файл php, который сохранит их в БД.

Допустим, у меня есть этот код:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<?php

// first I declare the session value
$_SESSION["sess_id"] =  uniqid($prefix = "", $more_entropy = TRUE);
$sess_id = $_SESSION["sess_id"];

// some rows forward, I have my select fields like this one
echo "<select id='num_1' name='num_1' onchange='set_num_1()'>";

?>

<script>
var num_1_val = "";
var session_id = '<?php echo $sess_id();?>';

function set_num_1() {

   num_1_val = document.getElementById('num_1').value;
   /* here I need to put the ajax code to send session_id and num_1_val to save_to_db.php */

   /* I suppose it's some code like follows: */
   $.ajax({
    type: "POST",
    url: "save_to_db.php",
    data: xxxxxxxx, /* ------------- here is where I fail
    success: function(){
        /* something to do back in case I need */;
    }
   });
}

Как правильно передать session_id и num_1_val в save_to_db. php?

Есть ли более безопасный режим для передачи $ _SESSION ["sess_id"] в save_to_db. php без сделать это видимым, как сейчас? Потому что, используя var session_id = '<?php echo $sess_id();?>';, я делаю значение $ sess_id видимым в скрипте страницы.

Можете ли вы мне помочь? Спасибо товарищи.

1 Ответ

0 голосов
/ 20 апреля 2020
var session_id = '<?php echo $sess_id();?>';

Лучший способ передать идентификатор сеанса - использовать заголовок Set-Cookie , см. Здесь

Вы можете передать несколько файлов cookie. Однако PHP делает это автоматически для вас, поэтому я не уверен, для чего это нужно.

...