我在删除员工时收到错误“未定义索引:Employee.php中的Msg”。 我试图从employeedb.php显示会话值。 这是我的employee.php。这里我试图在div“divGuestRegisterContainer”
中显示会话消息<?php
require_once("includes.php");
<div id="divGuestRegisterContainer" >
<b>
<?php
if($_SESSION["Msg"]!="")
{
?>
<ul>
<li>
<b><?php
echo $_SESSION["Msg"];
?>
</b>
</li>
</ul>
<?php
$_SESSION["Msg"]="";
}
?>
</b>
<ul>
<li>
<span style="width:120px;">Employee Name :</span>
<input type="text" name="txt_empname" id="txt_empname" class="textbox" value="<?php echo $emp_name;?>" />
</li>
<li >
<input type='button' id='btnDelete' name='btnDelete' class='button' value='Delete' onclick='deleteEmployee()' style='margin-left:10px;width:85px;display:inline' />
</li>
</ul>
</div>
?>
我将来自employeedb.php的$ _SESSION [“Msg”]值传递给employee.php 这是我的employeedb.php
<?php
require_once("includes.php");
$genObj=new general();
$type=$_GET["type"];
$emp_id=$_POST["HFEmpID"];
if($type=="delete")
{
mysql_query("UPDATE employee SET del_flag=1 WHERE emp_id=".$emp_id."");
$_SESSION["Msg"]="Employee details deleted successfully!";
}
header( 'Location:Employee.php');
?>
当点击删除按钮时,我正在调用这个javascript函数, 这是我的javascript函数。
function deleteEmployee()
{
var del = confirm("Are you sure you want to delete this Employee?");
if (del == true)
{
document.forms[0].action="employeeDB.php?type=delete";
document.forms[0].submit();
}
else
{
document.forms[0].action="employeeDB.php";
}
}
这是我的includes.php,我已经开始会话了
<?php
session_start();
ob_start();
//Session Starts
require_once("config/config.php");
require_once("config/dbcon/dbcon.php");
require_once("classes/csGeneral.php");
require_once("classes/csPager.php");
require_once("classes/csImageFunctions.php");
require_once("classes/striptag.php");
/* $_SESSION["returnURL"]=$_SERVER['HTTP_REFERER']; */
$genCheckUser=new general();
$genCheckUser->getUserIDCookie();
?>
答案 0 :(得分:4)
在检查变量是否为空之前,您必须检查变量是否确实存在。
所以将第6行改为:
if (isset($_SESSION['Msg']))
从PHP手册:
isset - 确定变量是否已设置且不是NULL
答案 1 :(得分:1)
在您的代码中,您刚刚回复了$_SESSION['Msg']
<b><?php echo $_SESSION["Msg"]; ?> </b>
这会在开始时出错,因为您没有为此设置值 之前没有删除,以便删除错误
所以你必须添加条件,如果$ _SESSION ['Msg']尚未设置,则不要回显它..
<b><?php if(!empty($_SESSION['Msg'])){ echo $_SESSION["Msg"];} ?> </b>
答案 2 :(得分:0)
session_start();
ob_start();
应该是:
ob_start();
session_start();
.
.
.
ob_flush(); <------- last statement