我目前正在使用这两个代码的部分。
一个用于接收数据,一个用于将其显示在列表中,但是由于某种原因,当我尝试在第二部分显示时,变量$emp_name
总是返回null
。
这个想法是搜索员工然后显示他的数据。
接收数据:
if (isset($_POST['search_button'])) {
$cnt = new Connector();
$employee = new Search($cnt);
$name = $_POST['name'];
$found = array('name' => $employee->getEmployeeByName($name)[0]['name']);
$emp_name = $found['name'];
global $emp_name;
$display = "<br><br>
<table class='table table-striped'>
<thead>
<tr>
<th width='100%';>Name</th>
<th width=100%;>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td width=100%;>$emp_name</td>
<td width=100%;><div class='container'>
<div class='dropdown'>
<button class='btn btn-default dropdown-toggle' type='button' id='menu1' data-toggle='dropdown'>Please choose
<span class='caret'></span></button>
<ul class='dropdown-menu' role='menu' aria-labelledby='menu1'>
<li role='presentation'><a role='menuitem' tabindex='-1'href='index.php?action=data'>Daten anzeigen</a></li>
<li role='presentation'><a role='menuitem' tabindex='-1' href='#'>Send message to $emp_name</a></li>
</ul>
</div>
</div>
</td>
</tr>
</tbody>
</table>
";
$_SESSION = $display;
}
?>
在列表中显示它:
<?php
print_r($_SESSION);
if (isset($_SESSION['action'])) {
echo "
<h4>Employee Data</h4><br>
<ul class='nav nav-tabs'>
<li class='active'><a data-toggle='tab'href='#sectionA'>Address</a></li>
<li><a data-toggle='tab' href='#sectionB'>Personal Data</a></li>
<li><a data-toggle='tab' href='#sectionB'>Communication Data</a></li>
</ul>
</li>
</ul>
<div class='tab-content'>
<div id='sectionA' class='tab-pane fade in active'>
<ul class='list-group'>
<li class='list-group-item'>First Name ".$emp_name."
</li>
<li class='list-group-item'>Last Name</li>
<li class='list-group-item'>Street</li>
<li class='list-group-item'>Zip</li>
<li class='list-group-item'>City</li>
<li class='list-group-item'>Country</li>
</ul>
</div>
<div id='sectionB' class='tab-pane fade'>
<p>Section B content…</p>
</div>
<div id='dropdown1' class='tab-pane fade'>
<p>Dropdown 1 content…</p>
</div>
<div id='dropdown2' class='tab-pane fade'>
<p>Dropdown 2 content…</p>
</div>
</div>
";
}
?>
我将检查$_SESSION['action']
的实际值,并单独回声(或VAR_DUMP)其他变量,例如$emp_name
,用于测试/确保它们实际上是按照您的预期填充的。正如杰伊·布兰查德(Jay Blanchard)所提到的那样,使用$ _session ['somevar']比使用全局关键字更好。
在此处找到了一些好信息:已经启动的PHP会话