Переменные сеанса PHP из POST - PullRequest
0 голосов
/ 06 декабря 2011

Я использую мои переменные POST (хотя я использую $ _REQUEST)

Я хочу поместить все переменные в их собственные переменные Session, но это просто не работает. Это выглядит неправильно для кого-либо?

<?php

foreach ($_REQUEST as $posted_name => $posted_value){

 $_SESSION[$posted_name].' = '.$posted_value;

}
?>

Я включаю session_start () в другую часть моего скрипта. Выше, конечно.

Ответы [ 5 ]

2 голосов
/ 06 декабря 2011

Есть большая проблема с этим:

$_SESSION[$posted_name].' = '.$posted_value;

Вам не нужно использовать конкатенацию строк . для установки значения сеанса. Эта строка просто вычисляется в строку и ничего не сохраняет в суперглобальном $_SESSION.

Попробуйте вместо этого

<?php
session_start();
foreach ($_REQUEST as $key => $value){
  $_SESSION[$key] = $value;
}
0 голосов
/ 06 декабря 2011

Вам нужно будет session_start()

Ваш окончательный код должен выглядеть как

<?php
session_start();
foreach ($_POST as $posted_name => $posted_value) {
    $_SESSION[$posted_name] = $posted_value;
    //You added unnecessary commenting here
}
?>
0 голосов
/ 06 декабря 2011

Вы объединяете строку или устанавливаете значение?

Попробуйте

$_SESSION[$posted_name] = $posted_value;

и что сказал @colighto.

0 голосов
/ 06 декабря 2011

Вы намеревались написать это вместо:

$_SESSION[$posted_name] = $posted_value;
0 голосов
/ 06 декабря 2011

Вы еще не вызывали эту функцию:

session_start();
...