Значение сеанса обновлено без намерения - PullRequest
0 голосов
/ 31 марта 2011

Эта проблема очень странная для меня. Я использую jQuery для отправки вызова ajax, например:

if($_POST['action']=="removeUser"){
$email=$_POST['id'];
$gname=$_POST['gname'];
$name=$_POST['name'];

include_once("inc/group.class.php");
$group=new group();

$array=array();
if($group->removeUser($gname,$email)){
    $array['stat']="success";
    $array['name']=$name;
}else{
    $array['stat']="fail";
}
echo json_encode($array);
exit;
}

Этот код работает нормально.

Но странной вещью является $email=$_POST['id']; в первой строке выше, которая также автоматически обновляет значение сеанса $_SESSION['email'] после успешного выполнения.

Например, если $ _POST ['id'] = "abc@st.com", $ _SESSION ['email'] = "abc@st.com" автоматически. Я не знаю, как это могло произойти, хотя они имеют одно и то же имя, но одно - $email, другое - $_SESSION['email'].

У кого-нибудь есть идеи, почему это может произойти?

Спасибо.

group.class

    public function removeUser($gname,$email){
    global $db;

    $query="DELETE FROM ec_join WHERE gname='$gname' AND member='$email'";

    $sql=$db->query($query) or die($db->error());

    if($sql){
        return true;
    }else{
        return false;
    }
}

1 Ответ

4 голосов
/ 31 марта 2011

Отключите register_globals в PHP.ini так быстро, как можете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...