PHP:为什么不在类中识别变量PHPSESSID?

时间:2012-06-06 03:36:14

标签: php mysql sessionid

正如标题所说,我想知道,因为它无法识别类DB_Functions中的$ sessionID变量。

当我检查表时,除了存储变量sessionID之外的所有字段。

<?php

session_start();
$sessionID = $_COOKIE['PHPSESSID'];

class DB_Functions {
....
....
....

public function insertItemToCart($dataMovieToInsertCart) {
        $precio = $dataMovieToInsertCart['precioMovie'];
        $id =  $dataMovieToInsertCart['claveMovie'];

        $query = "INSERT INTO carrito (session_carrito,id_pelicula,precio_pelicula) VALUES('$sessionID','$id','$precio')";
        $result = mysql_query($query) or die (mysql_error());

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

}
?>

1 个答案:

答案 0 :(得分:2)

双向修复:

1。)在函数内部使用global关键字来处理函数范围内不可用的全局变量

2.。)如果只有session_id的情况,请在函数内部使用session_id()函数。

例如1:

global $sessionID;
$id =  $dataMovieToInsertCart['claveMovie'];
$query = "INSERT INTO carrito (session_carrito,id_pelicula,precio_pelicula) VALUES('$sessionID','$id','$precio')";