2012-08-16 75 views
0

嗨,我需要将一个名为$process_id的变量传递给文件"config/update.php",该文件是负责使用DataTables.Editable进行实时表更新的文件。我需要将一个php变量传递给DataTables.Editable sUpdateURL

这个变量是一个整数,用来创建一个表(例如table1),以便更新我需要的具体表UPDATE table$process_id SET...,并且能够做到这一点,我需要将该变量传递给更新表的脚本。

这里是我的Datatables.Editable Wiki经过一番研究,想出了:

数据表初始化和另外makeEditable功能:

$('#example').dataTable().makeEditable({ 
    sUpdateURL: "config/update.php", 
    oUpdateParameters: { 
     "process_id": "<?php echo $process_id; ?>" 
    } 
}); 

而且update.php文件

<?php 
$id = $_REQUEST['id'] ; 
$value = $_REQUEST['value'] ; 
$column = $_REQUEST['columnName'] ; 
$columnPosition = $_REQUEST['columnPosition'] ; 
$columnId = $_REQUEST['columnId'] ; 
$rowId = $_REQUEST['rowId'] ; 
$column_name = trim($column); 

$process_id = $_REQUEST['process_id']; 

include("config.php"); 

// mysql_query(" UPDATE $sTable SET $column = $value WHERE trl_id = $id "); 
mysql_query("UPDATE tw_tg_sim_lines$process_id SET $column_name = '$value' WHERE trl_id = '$id'"); 

echo $id; 

?> 

我已经尝试了不同的方法,例如$ _POST,$ _GET和$ _REQUEST。似乎没有任何工作,所以问题在oUpdateParameters

任何帮助将不胜感激,谢谢。

+1

对不起,我是新来的。没有意识到它影响了那么多。现在排序。谢谢。 – waltfy 2012-08-16 15:04:20

回答

2

我想你需要做一个AJAX调用PHP脚本

这个使用jQuery

var dataString = ('process_id='+ <?php echo $process_id; ?>); 

    $.ajax({ 
     type: "GET", 
     url: "config/update.php", 
     data: dataString, 
     success: function(data) { 
     $('.result').html(data); 
     alert('Load was performed.'); 
     } 
    }); 

这里refrenced http://api.jquery.com/jQuery.ajax/

+0

到目前为止,这还没有奏效,这就是我想要的方式: '().makeEditable({sUpdateURL:“config/update.xxxx.xxxxxx)PHP “ \t \t \t \t \t \t oUpdateParameters:{}, \t \t \t \t \t \t ajaxoptions:{ \t \t \t \t \t \t \t类型: 'GET', \t \t \t \t \t \t \t URL:” config/update.php“, \t \t \t \t \t \t \t data:“process_id =”?php echo $ process_id; ?>” \t \t \t \t \t \t} \t \t \t \t \t});' – waltfy 2012-08-16 15:37:37

+0

林不知道.makeeditable是 - 但jQuery.ajax()是进行异步请求到另一个URL – Rob 2012-08-16 15:45:22

+0

.makeEditable一个行之有效的方法()只是一个函数,使我的DataTable可编辑,它是DataTables插件的一部分。我假设我需要在makeEditable函数内部传递此参数。 – waltfy 2012-08-16 15:54:35

3

我完全在想着为我工作在过去的问题,我为此道歉。但是,如果你是在同一条船上,我并不能看到这显然...

这是我做了什么来解决这个问题:

$('#table').dataTables().makeEditable({ 
    sUpdateURL: "config/update.php?process_id=<?php echo $process_id; ?>" 
}); 

这使我做到以下几点在update.php:

$id = $_REQUEST['id'] ; 
$value = $_REQUEST['value'] ; 
$column = $_REQUEST['columnName'] ; 
$columnPosition = $_REQUEST['columnPosition'] ; 
$columnId = $_REQUEST['columnId'] ; 
$rowId = $_REQUEST['rowId'] ; 
$column_name = trim($column); 
$process_id = $_GET['process_id']; 


mysql_query("UPDATE tw_tg_sim_lines$process_id SET $column_name = '$value' WHERE trl_id = '$id'"); 

这是超级简单,我确实有点尴尬。但在这里。

有时候很简单,很难看。

谢谢。