2012-01-13 62 views
0

同时使用CRUD到我的数据库驱动的网站的一个..when我们尝试创建/使用创建或更新选项我收到以下错误未定义指数错误消息:PHP AJAX JQUERY

注意更新数据库:未定义的索引:crud_table in /home/sulabgqh/public_html/leads/controllers/grid_controller.php on line 89

我想知道什么是可能的错误,下面的参考是变量'crud_table'表名的公共decotel

/********************* PUBLIC METHODS ********************/ 

public function setDbTable($table){ 
    $_SESSION['crud_table'] = $table; 
} 


public function setPrimaryKey($primaryId) { 
    $_SESSION['crud_primary_key']=$primaryId; 
} 

和构造器在这里使用..

/********************* CONSTRUCTOR ********************/ 
    public function __construct(){ 
     session_start(); 
     $_SESSION['crud_table'] = null; 
     $_SESSION['crud_title_map'] = null; 
     $_SESSION['crud_actions'] = null; 
     $_SESSION['crud_primary_key']='id'; 
     $_SESSION['crud_per_page']=10; 
    } 

和克里特岛的功能是这样的

public function create(){ 
     //setting from grid object 
     $table = $_SESSION['crud_table']; 
     $pk = $_SESSION['crud_primary_key']; 

回答

0

好像会话变量心不是一套的,因为它是“不确定”。尝试检查varibale之前ü使用它的功能就像

if(isset($_SESSION['crud_table'])){ 
do stuff... 
} 

是会话startet是否正确?

0

确保您已将session_start()放在所有正在使用会话的脚本的顶部,这是未设置会话变量的最常见原因。

session_start()不会启动一个会话,它会检查一个会话是否已经在运行,如果是的话,它会加载那个会话,否则会创建一个新会话。

+0

你可以在我的构造函数中看到我叫做session_start()。 – panindra 2012-01-13 12:59:33

+0

检查会话是否正确启动,失败时返回FALSE,如果使用基于Cookie的会话,必须在任何输出发送到浏览器之前调用会话。此外,为什么表名被存储在会话中,而不是在类的成员变量中? – RMcLeod 2012-01-13 13:04:42