php сессия не сохраняет переменные - PullRequest
0 голосов
/ 03 июля 2018

Я пытаюсь сохранить три запроса и затем сравнить их для моего проекта колледжа. Вот код:

$app->map(['GET'],'/dados/{id}/{corrente}/{tensao}/{potencia}', function (Request $request, Response $response, array $args) {
if(!isset($_SESSION)) { 
    session_start();
    $_SESSION['req1'] = FALSE;
    $_SESSION['req2'] = FALSE;
    $_SESSION['req3'] = FALSE;
} 

require_once("db.php");

$req = array();

$id = $request->getAttribute('id');
$c = $request->getAttribute('corrente');
$v = $request->getAttribute('tensao');
$p = $request->getAttribute('potencia');

echo "id: $id, corrente: $c, tensão: $v, potência: $p \n";

array_push($req,$id,$c,$v,$p);

$query = $pdo->prepare('INSERT INTO teste_sustek VALUES (?,?,?,?)');
$query->execute([$id,$c,$v,$p]);

if (empty($_SESSION["req1"])){
    //first request
    $_SESSION["req1"] = $req;
    echo "first request \n";
    echo var_dump($_SESSION["req1"]);
} else if (empty($_SESSION["req2"])){
    //second request
    $_SESSION["req2"] = $req;
    echo "second request";
} else if (empty($_SESSION["req3"])){
    //compare them here
    $_SESSION["req3"] = $req;
    session_destroy();

    echo "third and last request";
} });

Однако, когда я тестирую его через Почтальон, я всегда получаю следующий вывод, как будто мой сеанс не хранит мои переменные:

id: 1, corrente: 2, tenão: 3, potência: 4

первый запрос

array (4) {[0] => string (1) "1" [1] => string (1) "2" [2] => string (1) "3" [3] =>

string (1) "4"}

1 Ответ

0 голосов
/ 03 июля 2018

Звоните session_start(); в ваш index.php

...