Php 代码点火器严重性:注意-->;未定义变量
因为这个错误,我感到沮丧。当我还在编写php而不使用任何框架时,我的代码还可以,但当我在codeigniter中传输它时,它总是说严重性未定义函数。请检查我的邮政编码:Php 代码点火器严重性:注意-->;未定义变量,php,mysql,codeigniter,Php,Mysql,Codeigniter,因为这个错误,我感到沮丧。当我还在编写php而不使用任何框架时,我的代码还可以,但当我在codeigniter中传输它时,它总是说严重性未定义函数。请检查我的邮政编码: foreach($data['employee'] as $val) { if($val['Active']==0) { $status = @strtoupper('Resigned'); } else {
foreach($data['employee'] as $val)
{
if($val['Active']==0)
{
$status = @strtoupper('Resigned');
}
else
{
$status = @strtoupper('Active');
}
$str = @substr($val['WS_Code'],0,-2);
if($str == "PR")
{
$line = @substr($val['WS_Code'],0,-1);
$str2 = @substr($val['WS_Code'],-1);
if($str2 == 'B')
{
$section = "BRIEF";
}
else
{
$section = "PANTY";
}
}
elseif($str == "SP")
{
$line = @substr($val['WS_Code'],0,-1);
$str2 = @substr($val['WS_Code'],-1);
if($str2 == "B")
{
$section = "BRIEF";
}
else
{
$section = "PANTY";
}
}
elseif($str == "BL")
{
$section = "BRIEF";
$str2 = @substr($str,-3,2);
$line = $str2;
}
elseif($str == "PL")
{
$section = "PANTY";
$str2 = @substr($str,-3,2);
$line = $str2;
}
下面是代码的其余部分以及我如何使用它:
<tr>
<td><label class='control-label'>Section:</label></td>
<td>
<select class='form-control' name='cmbsection' id='cmbsection'>
<option value='".$section."'>".$section."</option>
";
$section_code = array();
$section_code[] = $section;
foreach($data['sectionlist'] as $value)
{
if(!in_array($value['sectionName'],$section_code))
{
echo "<option value='".$value['sectionName']."'>".$value['sectionName']."</option>";
}
}
echo "
</select>
</td>
<td><label class='control-label'>Line:</label></td>
<td>
<select class='form-control' name='cmbline' id='cmbline'>
";
$line_code = array();
$line_code[] = $line;
echo "
<option value='$line'>$line</option>
";
foreach($data['linelist'] as $value)
{
if(!in_array($value['lineName'],$line_code))
{
echo "<option value='".$value['lineName']."'>".$value['lineName']."</option>";
}
}
echo "
</select>
</td>
</tr>
第节:
“$section。”
";
$section_code=array();
$section_code[]=$section;
foreach($data['sectionlist']作为$value)
{
if(!in_数组($value['sectionName',$section_代码))
{
回显“$value['sectionName']”;
}
}
回声“
行:
";
$line_code=array();
$line_代码[]=$line;
回声“
美元线
";
foreach($data['linelist']作为$value)
{
if(!in_数组($value['lineName'],$line_代码))
{
回显“$value['lineName']”;
}
}
回声“
请注意,我正在回显控制器内的一个表,错误总是指向中的$部分
和$行
,如果(!in_数组($value['lineName',$line_code))
code
请使用以下代码:
if(isset($line)){
echo "<option value='$line'>$line</option>";
}
foreach($data['linelist'] as $value){
if(isset($value['lineName']) && isset($line_code)) {
if (!in_array($value['lineName'], $line_code)) {
echo "<option value='" . $value['lineName'] . "'>" . $value['lineName'] . "</option>";
}
}
}
if(isset($line)){
回音“$line”;
}
foreach($data['linelist']作为$value){
if(isset($value['lineName'])和&isset($line_代码)){
if(!in_数组($value['lineName'],$line_代码)){
回显“$value['lineName']”;
}
}
}
我不认为这是一个好的解决方案,但它至少会确保变量$line
和$section
存在
您的问题是,您在WS\u code
中获得了一个您没有处理的代码。由于只有在看到为其编码的代码时才创建这两个变量,因此必须是您有一个新代码,而这是您没有预料到的,并且是为其编码的
正确的解决方案是找出您在这段代码中得到的、您不希望得到的WS\u code
事实上,正确的解决方案是创建一个包含code
和full_desc
的表,您可以查询该表,以便将这些代码扩展到您想要使用的任何完整描述中,并确保在创建新代码时相应地更新该表
$line = 'new unexpected code recieved';
$section = 'new unexpected section recieved';
foreach($data['employee'] as $val)
{
if($val['Active']==0) {
$status = strtoupper('Resigned');
} else {
$status = strtoupper('Active');
}
$str = substr($val['WS_Code'],0,-2);
if($str == "PR") {
$line = substr($val['WS_Code'],0,-1);
$str2 = substr($val['WS_Code'],-1);
if($str2 == 'B') {
$section = "BRIEF";
} else {
$section = "PANTY";
}
}
elseif($str == "SP") {
$line = substr($val['WS_Code'],0,-1);
$str2 = substr($val['WS_Code'],-1);
if($str2 == "B") {
$section = "BRIEF";
} else {
$section = "PANTY";
}
}
elseif($str == "BL") {
$section = "BRIEF";
$str2 = substr($str,-3,2);
$line = $str2;
}
elseif($str == "PL") {
$section = "PANTY";
$str2 = substr($str,-3,2);
$line = $str2;
}
您最好阅读更多关于mvc和Codeigniter的信息。在控制器内部回送是一种不好的做法。请提及您在哪几行中收到此错误?我不想太多地使用json,这就是为什么我这样做,而且我不知道如果回送json,我的代码逻辑是否会工作…它在if(!in_数组($value['lineName',$line_code])行中的$line和if(!in_数组($value)中的相同['sectionName'],$section_code])对于$section…在不报告任何错误的环境中启用错误处理,您可能会在这两个环境中看到错误
错误报告(E_ALL);ini_set('display_errors',1)
很抱歉,您提供的代码不在提示错误的行中,请检查我发布的图像…..再次强调,根据全名处理的代码,忽略为$line
分配名称的代码中的错误,这是有缺陷的…!我不知道我还需要在t声明它在使用变量之前,他在foreach的顶端。我以为codeigniter不再需要我做它了,但谢谢你把我从沉默中唤醒。。。。。