我想知道是否有人可以帮助我。
我在HTML表单中捕获Session variable
,如下所示:
$lid = $_SESSION['lid'];
从这个主HTML表单中,使用以下代码行,然后使用'mysqlajaxtableeditor`软件加载外部ajax表:
</script>
<!-- Set ajax url -->
<script type="text/javascript">
trackHistory = false;
var ajaxUrl = 'Example3.php';
</script>
<body id="page2" onload="toAjaxTableEditor('update_html','');">
我希望能够做的是从主窗体中捕获Session variable
并将其传递给外部ajax表。
我已经阅读了这个网站上的一些帖子,我希望我能够解决我的问题,但我似乎无法传递价值。
根据我的阅读,我在主表单上尝试了以下内容:
var ajaxUrl = 'Example3.php?lid=$lid';
,然后在接收AJAX表脚本$lid = $_GET['lid'];
,但它不起作用,我不知道我哪里出错了。
有关其他信息,我已在下面发布了AJAX表代码:
class Example1 extends Common
{
function initiateEditor()
{
$tableColumns['findid'] = array('display_text' => 'Find ID', 'perms' => 'TV');
$tableColumns['dateoftrip'] = array('display_text' => 'Date of Trip', 'perms' => 'ETV');
$tableColumns['finddescription'] = array('display_text' => 'Find Description', 'perms' => 'ETV');
$tableColumns['detectorname'] = array('display_text' => 'Detector Used', 'perms' => 'EVT');
$tableColumns['searchheadname'] = array('display_text' => 'Search Head Used', 'perms' => 'ETV');
$tableColumns['pasref'] = array('display_text' => 'PAS Ref.', 'perms' => 'ETV');
$tableName = 'finds';
$primaryCol = 'findid';
$errorFun = array(&$this,'logError');
$permissions = 'EID';
require_once('php/AjaxTableEditor.php');
$this->Editor = new AjaxTableEditor($tableName,$primaryCol,$errorFun,$permissions,$tableColumns);
$this->Editor->setConfig('tableInfo','cellpadding="1" width="800" class="mateTable"');
$this->Editor->setConfig('tableTitle','');
$this->Editor->setConfig('orderByColumn','dateoftrip');
$this->Editor->setConfig('editRowTitle','Edit Details');
$this->Editor->setConfig('iconTitle','Edit Find Details');
}
function Example1()
{
if(isset($_POST['json']))
{
session_start();
$this->mysqlConnect();
if(ini_get('magic_quotes_gpc'))
{
$_POST['json'] = stripslashes($_POST['json']);
}
if(function_exists('json_decode'))
{
$data = json_decode($_POST['json']);
}
else
{
require_once('php/JSON.php');
$js = new Services_JSON();
$data = $js->decode($_POST['json']);
}
if(empty($data->info) && strlen(trim($data->info)) == 0)
{
$data->info = '';
}
$this->initiateEditor();
$this->Editor->main($data->action,$data->info);
if(function_exists('json_encode'))
{
echo json_encode($this->Editor->retArr);
}
else
{
echo $js->encode($this->Editor->retArr);
}
}
}
}
$lte = new Example1();
?>
我只是想知道是否有人可以看到这个,让我知道我哪里出错?
非常感谢和亲切的问候
答案 0 :(得分:0)
经过大量的工作和搜索互联网,我找到了解决方案。
在HMTL页面中我写了这个:
<!-- Set ajax url -->
<script type="text/javascript">
trackHistory = false;
var ajaxUrl = 'ajaxtable.php?lid=$lid';
</script>
<body id="page2" onload="toAjaxTableEditor('update_html','');">
在我收到的AJAX Table Editor软件脚本中,我写道:
function initiateEditor()
{
$tableColumns['locationid'] = array('display_text' => '', 'perms' => '','data_filters' => array('filters' => array("='".$_SESSION['lid']."'")), 'default' => $_SESSION['lid']);
我希望将来可以帮助某人。
亲切的问候